home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1996 May: Tool Chest / Developer CD Series May 1996 (Tool Chest) (Apple Computer) (1996).iso / Tool Chest / Development Tools & Languages / Dylan Related / Dylan Interim Manual / Interim Book - DocViewer / Dylan Interim Book < prev   
MacBinary  |  1994-06-22  |  1.1 MB  |  [ONLN/HLX2]

open in: MacOS 8.1     |     Win98     |     DOS

browse contents    |     view JSON data     |     view as text


This file was processed as: MacBinary (archive/macBinary).

ConfidenceProgramDetectionMatch TypeSupport
10% dexvert MacBinary (archive/macBinary) fallback Supported
100% file MacBinary II, inited, Sun Jun 19 13:35:49 1994, modified Wed Jun 22 13:36:59 1994, creator 'HLX2', type 'ONLN', 1161400 bytes "Dylan Interim Book" , at 0x11b938 21303 bytes resource default (weak)
99% file data default
100% TrID MacBinary 2 default (weak)
100% siegfried fmt/1762 MacBinary (II) default
100% lsar MacBinary default


id metadata
keyvalue
macFileType[ONLN]
macFileCreator[HLX2]



hex view
+--------+-------------------------+-------------------------+--------+--------+
|00000000| 00 12 44 79 6c 61 6e 20 | 49 6e 74 65 72 69 6d 20 |..Dylan |Interim |
|00000010| 42 6f 6f 6b 00 00 00 00 | 00 00 00 00 00 00 00 00 |Book....|........|
|00000020| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000030| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000040| 00 4f 4e 4c 4e 48 4c 58 | 32 01 00 00 00 00 00 00 |.ONLNHLX|2.......|
|00000050| 00 00 00 00 11 b8 b8 00 | 00 53 37 aa 2a 32 75 aa |........|.S7.*2u.|
|00000060| 2e 27 3b 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |.';.....|........|
|00000070| 00 00 00 00 00 00 00 00 | 00 00 81 81 6a de 00 00 |........|....j...|
|00000080| 44 79 6c 61 6e 54 4d 20 | 0d 49 6e 74 65 72 69 6d |DylanTM |.Interim|
|00000090| 20 0d 52 65 66 65 72 65 | 6e 63 65 20 4d 61 6e 75 | .Refere|nce Manu|
|000000a0| 61 6c 0d 20 2c 20 0d a9 | 20 31 39 39 32 2d 31 39 |al. , ..| 1992-19|
|000000b0| 39 34 20 41 70 70 6c 65 | 20 43 6f 6d 70 75 74 65 |94 Apple| Compute|
|000000c0| 72 2c 20 49 6e 63 2e 0d | 41 6c 6c 20 72 69 67 68 |r, Inc..|All righ|
|000000d0| 74 73 20 72 65 73 65 72 | 76 65 64 2e 0d 0d 41 70 |ts reser|ved...Ap|
|000000e0| 70 6c 65 20 43 6f 6d 70 | 75 74 65 72 2c 20 49 6e |ple Comp|uter, In|
|000000f0| 63 2e 0d 32 30 35 32 35 | 20 4d 61 72 69 61 6e 69 |c..20525| Mariani|
|00000100| 20 41 76 65 6e 75 65 0d | 43 75 70 65 72 74 69 6e | Avenue.|Cupertin|
|00000110| 6f 2c 20 43 41 20 39 35 | 30 31 34 2d 36 32 39 39 |o, CA 95|014-6299|
|00000120| 0d 34 30 38 2d 39 39 36 | 2d 31 30 31 30 0d 41 70 |.408-996|-1010.Ap|
|00000130| 70 6c 65 2c 20 61 6e 64 | 20 74 68 65 20 41 70 70 |ple, and| the App|
|00000140| 6c 65 20 4c 6f 67 6f 20 | 61 72 65 20 74 72 61 64 |le Logo |are trad|
|00000150| 65 6d 61 72 6b 73 20 6f | 66 20 41 70 70 6c 65 20 |emarks o|f Apple |
|00000160| 43 6f 6d 70 75 74 65 72 | 2c 20 49 6e 63 2e 2c 20 |Computer|, Inc., |
|00000170| 72 65 67 69 73 74 65 72 | 65 64 20 69 6e 20 74 68 |register|ed in th|
|00000180| 65 20 55 6e 69 74 65 64 | 20 53 74 61 74 65 73 20 |e United| States |
|00000190| 61 6e 64 20 6f 74 68 65 | 72 20 63 6f 75 6e 74 72 |and othe|r countr|
|000001a0| 69 65 73 2e 20 20 44 79 | 6c 61 6e 20 69 73 20 61 |ies. Dy|lan is a|
|000001b0| 20 74 72 61 64 65 6d 61 | 72 6b 20 6f 66 20 41 70 | tradema|rk of Ap|
|000001c0| 70 6c 65 20 43 6f 6d 70 | 75 74 65 72 2e 0d 53 6d |ple Comp|uter..Sm|
|000001d0| 61 6c 6c 74 61 6c 6b 2d | 38 30 20 69 73 20 61 20 |alltalk-|80 is a |
|000001e0| 74 72 61 64 65 6d 61 72 | 6b 20 6f 66 20 50 61 72 |trademar|k of Par|
|000001f0| 63 50 6c 61 63 65 20 53 | 79 73 74 65 6d 73 2e 20 |cPlace S|ystems. |
|00000200| 20 50 4c 2f 49 20 69 73 | 20 61 20 74 72 61 64 65 | PL/I is| a trade|
|00000210| 6d 61 72 6b 20 6f 66 20 | 49 6e 74 65 72 6e 61 74 |mark of |Internat|
|00000220| 69 6f 6e 61 6c 20 42 75 | 73 69 6e 65 73 73 20 4d |ional Bu|siness M|
|00000230| 61 63 68 69 6e 65 73 20 | 43 6f 72 70 2e 20 20 45 |achines |Corp. E|
|00000240| 69 66 66 65 6c 20 69 73 | 20 61 20 74 72 61 64 65 |iffel is| a trade|
|00000250| 6d 61 72 6b 20 6f 66 20 | 49 6e 74 65 72 61 63 74 |mark of |Interact|
|00000260| 69 76 65 20 53 6f 66 74 | 77 61 72 65 20 45 6e 67 |ive Soft|ware Eng|
|00000270| 69 6e 65 65 72 69 6e 67 | 2c 20 49 6e 63 2e 0d 4c |ineering|, Inc..L|
|00000280| 69 6d 69 74 65 64 20 57 | 61 72 72 61 6e 74 79 20 |imited W|arranty |
|00000290| 6f 6e 20 4d 65 64 69 61 | 20 61 6e 64 20 52 65 70 |on Media| and Rep|
|000002a0| 6c 61 63 65 6d 65 6e 74 | 0d 45 76 65 6e 20 74 68 |lacement|.Even th|
|000002b0| 6f 75 67 68 20 41 70 70 | 6c 65 20 68 61 73 20 72 |ough App|le has r|
|000002c0| 65 76 69 65 77 65 64 20 | 74 68 69 73 20 6d 61 6e |eviewed |this man|
|000002d0| 75 61 6c 2c 20 41 70 70 | 6c 65 20 6d 61 6b 65 73 |ual, App|le makes|
|000002e0| 20 6e 6f 20 77 61 72 72 | 61 6e 74 79 20 6f 72 20 | no warr|anty or |
|000002f0| 72 65 70 72 65 73 65 6e | 74 61 74 69 6f 6e 20 2c |represen|tation ,|
|00000300| 20 65 69 74 68 65 72 20 | 65 78 70 72 65 73 73 20 | either |express |
|00000310| 6f 72 20 69 6d 70 6c 69 | 65 64 2c 20 77 69 74 68 |or impli|ed, with|
|00000320| 20 72 65 73 70 65 63 74 | 20 74 6f 20 74 68 69 73 | respect| to this|
|00000330| 20 6d 61 6e 75 61 6c 2c | 20 69 74 73 20 71 75 61 | manual,| its qua|
|00000340| 6c 69 74 79 2c 20 61 63 | 63 75 72 61 63 79 2c 20 |lity, ac|curacy, |
|00000350| 6d 65 72 63 68 61 6e 74 | 61 62 69 6c 69 74 79 2c |merchant|ability,|
|00000360| 20 6f 72 20 66 69 74 6e | 65 73 73 20 66 6f 72 20 | or fitn|ess for |
|00000370| 61 20 70 61 72 74 69 63 | 75 6c 61 72 20 70 75 72 |a partic|ular pur|
|00000380| 70 6f 73 65 3b 20 61 73 | 20 61 20 72 65 73 75 6c |pose; as| a resul|
|00000390| 74 2c 20 74 68 69 73 20 | 6d 61 6e 75 61 6c 20 69 |t, this |manual i|
|000003a0| 73 20 70 72 6f 76 69 64 | 65 64 20 22 61 73 20 69 |s provid|ed "as i|
|000003b0| 73 2c 22 20 61 6e 64 20 | 79 6f 75 2c 20 74 68 65 |s," and |you, the|
|000003c0| 20 72 65 61 64 65 72 2c | 20 61 72 65 20 61 73 73 | reader,| are ass|
|000003d0| 75 6d 69 6e 67 20 74 68 | 65 20 65 6e 74 69 72 65 |uming th|e entire|
|000003e0| 20 72 69 73 6b 20 61 73 | 20 74 6f 20 69 74 73 20 | risk as| to its |
|000003f0| 71 75 61 6c 69 74 79 20 | 61 6e 64 20 61 63 63 75 |quality |and accu|
|00000400| 72 61 63 79 2e 0d 49 6e | 20 6e 6f 20 65 76 65 6e |racy..In| no even|
|00000410| 74 20 77 69 6c 6c 20 41 | 70 70 6c 65 20 62 65 20 |t will A|pple be |
|00000420| 6c 69 61 62 6c 65 20 66 | 6f 72 20 64 69 72 65 63 |liable f|or direc|
|00000430| 74 2c 20 69 6e 64 69 72 | 65 63 74 2c 20 73 70 65 |t, indir|ect, spe|
|00000440| 63 69 61 6c 2c 20 69 6e | 63 69 64 65 6e 74 61 6c |cial, in|cidental|
|00000450| 2c 20 6f 72 20 63 6f 6e | 73 65 71 75 65 6e 74 69 |, or con|sequenti|
|00000460| 61 6c 20 64 61 6d 61 67 | 65 73 20 72 65 73 75 6c |al damag|es resul|
|00000470| 74 69 6e 67 20 66 72 6f | 6d 20 61 6e 79 20 64 65 |ting fro|m any de|
|00000480| 66 65 63 74 20 6f 72 20 | 69 6e 61 63 63 75 72 61 |fect or |inaccura|
|00000490| 63 79 20 69 6e 20 74 68 | 69 73 20 6d 61 6e 75 61 |cy in th|is manua|
|000004a0| 6c 2c 20 65 76 65 6e 20 | 69 66 20 61 64 76 69 73 |l, even |if advis|
|000004b0| 65 64 20 6f 66 20 74 68 | 65 20 70 6f 73 73 69 62 |ed of th|e possib|
|000004c0| 69 6c 69 74 79 20 6f 66 | 20 73 75 63 68 20 64 61 |ility of| such da|
|000004d0| 6d 61 67 65 73 2e 0d 54 | 68 65 20 77 61 72 72 61 |mages..T|he warra|
|000004e0| 6e 74 79 20 61 6e 64 20 | 72 65 6d 65 64 69 65 73 |nty and |remedies|
|000004f0| 20 73 65 74 20 66 6f 72 | 74 68 20 61 62 6f 76 65 | set for|th above|
|00000500| 20 61 72 65 20 65 78 63 | 6c 75 73 69 76 65 20 61 | are exc|lusive a|
|00000510| 6e 64 20 69 6e 20 6c 69 | 65 75 20 6f 66 20 61 6c |nd in li|eu of al|
|00000520| 6c 20 6f 74 68 65 72 73 | 2c 20 6f 72 61 6c 20 6f |l others|, oral o|
|00000530| 72 20 77 72 69 74 74 65 | 6e 2c 20 65 78 70 72 65 |r writte|n, expre|
|00000540| 73 73 20 6f 72 20 69 6d | 70 6c 69 65 64 2e 20 20 |ss or im|plied. |
|00000550| 4e 6f 20 41 70 70 6c 65 | 20 64 65 61 6c 65 72 2c |No Apple| dealer,|
|00000560| 20 61 67 65 6e 74 2c 20 | 6f 72 20 65 6d 70 6c 6f | agent, |or emplo|
|00000570| 79 65 65 20 69 73 20 61 | 75 74 68 6f 72 69 7a 65 |yee is a|uthorize|
|00000580| 64 20 74 6f 20 6d 61 6b | 65 20 61 6e 79 20 6d 6f |d to mak|e any mo|
|00000590| 64 69 66 69 63 61 74 69 | 6f 6e 2c 20 65 78 74 65 |dificati|on, exte|
|000005a0| 6e 73 69 6f 6e 2c 20 6f | 72 20 61 64 64 69 74 69 |nsion, o|r additi|
|000005b0| 6f 6e 20 74 6f 20 74 68 | 69 73 20 77 61 72 72 61 |on to th|is warra|
|000005c0| 6e 74 79 2e 0d 53 6f 6d | 65 20 73 74 61 74 65 73 |nty..Som|e states|
|000005d0| 20 64 6f 20 6e 6f 74 20 | 61 6c 6c 6f 77 20 74 68 | do not |allow th|
|000005e0| 65 20 65 78 63 6c 75 73 | 69 6f 6e 20 6f 72 20 6c |e exclus|ion or l|
|000005f0| 69 6d 69 74 61 74 69 6f | 6e 20 6f 66 20 69 6d 70 |imitatio|n of imp|
|00000600| 6c 69 65 64 20 77 61 72 | 72 61 6e 74 69 65 73 20 |lied war|ranties |
|00000610| 6f 72 20 6c 69 61 62 69 | 6c 69 74 79 20 66 6f 72 |or liabi|lity for|
|00000620| 20 69 6e 63 69 64 65 6e | 74 61 6c 20 6f 72 20 63 | inciden|tal or c|
|00000630| 6f 6e 73 65 71 75 65 6e | 74 69 61 6c 20 64 61 6d |onsequen|tial dam|
|00000640| 61 67 65 73 2c 20 73 6f | 20 74 68 65 20 61 62 6f |ages, so| the abo|
|00000650| 76 65 20 6c 69 6d 69 74 | 61 74 69 6f 6e 20 6f 72 |ve limit|ation or|
|00000660| 20 65 78 63 6c 75 73 69 | 6f 6e 20 6d 61 79 20 6e | exclusi|on may n|
|00000670| 6f 74 20 61 70 70 6c 79 | 20 74 6f 20 79 6f 75 2e |ot apply| to you.|
|00000680| 20 20 54 68 69 73 20 77 | 61 72 72 61 6e 74 79 20 | This w|arranty |
|00000690| 67 69 76 65 73 20 79 6f | 75 20 73 70 65 63 69 66 |gives yo|u specif|
|000006a0| 69 63 20 6c 65 67 61 6c | 20 72 69 67 68 74 73 2c |ic legal| rights,|
|000006b0| 20 61 6e 64 20 79 6f 75 | 20 6d 61 79 20 61 6c 73 | and you| may als|
|000006c0| 6f 20 68 61 76 65 20 6f | 74 68 65 72 20 72 69 67 |o have o|ther rig|
|000006d0| 68 74 73 20 77 68 69 63 | 68 20 76 61 72 79 20 66 |hts whic|h vary f|
|000006e0| 72 6f 6d 20 73 74 61 74 | 65 20 20 74 6f 20 73 74 |rom stat|e to st|
|000006f0| 61 74 65 2e 0d 41 62 6f | 75 74 20 74 68 69 73 20 |ate..Abo|ut this |
|00000700| 4d 61 6e 75 61 6c 0d 57 | 68 65 6e 20 74 68 65 20 |Manual.W|hen the |
|00000710| 66 69 72 73 74 20 44 79 | 6c 61 6e 20 6d 61 6e 75 |first Dy|lan manu|
|00000720| 61 6c 20 77 61 73 20 70 | 75 62 6c 69 73 68 65 64 |al was p|ublished|
|00000730| 20 69 6e 20 31 39 39 32 | 2c 20 69 74 20 77 61 73 | in 1992|, it was|
|00000740| 20 6d 65 74 20 77 69 74 | 68 20 61 6e 20 65 6e 74 | met wit|h an ent|
|00000750| 68 75 73 69 61 73 74 69 | 63 20 72 65 73 70 6f 6e |husiasti|c respon|
|00000760| 73 65 2e 20 20 50 65 6f | 70 6c 65 20 61 67 72 65 |se. Peo|ple agre|
|00000770| 65 64 20 77 69 74 68 20 | 6f 75 72 20 67 6f 61 6c |ed with |our goal|
|00000780| 73 20 66 6f 72 20 74 68 | 65 20 6c 61 6e 67 75 61 |s for th|e langua|
|00000790| 67 65 2c 20 61 6e 64 20 | 6d 61 6e 79 20 70 65 6f |ge, and |many peo|
|000007a0| 70 6c 65 20 73 75 67 67 | 65 73 74 65 64 20 77 61 |ple sugg|ested wa|
|000007b0| 79 73 20 69 6e 20 77 68 | 69 63 68 20 44 79 6c 61 |ys in wh|ich Dyla|
|000007c0| 6e 20 63 6f 75 6c 64 20 | 62 65 74 74 65 72 20 6d |n could |better m|
|000007d0| 65 65 74 20 69 74 73 20 | 67 6f 61 6c 73 2e 0d 53 |eet its |goals..S|
|000007e0| 69 6e 63 65 20 74 68 61 | 74 20 74 69 6d 65 2c 20 |ince tha|t time, |
|000007f0| 61 6e 20 65 78 70 61 6e | 64 65 64 20 67 72 6f 75 |an expan|ded grou|
|00000800| 70 20 6f 66 20 65 6e 67 | 69 6e 65 65 72 73 20 62 |p of eng|ineers b|
|00000810| 6f 74 68 20 69 6e 73 69 | 64 65 20 61 6e 64 20 6f |oth insi|de and o|
|00000820| 75 74 73 69 64 65 20 41 | 70 70 6c 65 20 68 61 76 |utside A|pple hav|
|00000830| 65 20 77 6f 72 6b 65 64 | 20 74 6f 20 72 65 66 69 |e worked| to refi|
|00000840| 6e 65 20 74 68 65 20 6c | 61 6e 67 75 61 67 65 20 |ne the l|anguage |
|00000850| 64 65 73 69 67 6e 20 69 | 6e 20 72 65 73 70 6f 6e |design i|n respon|
|00000860| 73 65 20 74 6f 20 74 68 | 6f 73 65 20 73 75 67 67 |se to th|ose sugg|
|00000870| 65 73 74 69 6f 6e 73 2e | 20 20 54 68 65 20 6c 61 |estions.| The la|
|00000880| 6e 67 75 61 67 65 20 68 | 61 73 20 62 65 63 6f 6d |nguage h|as becom|
|00000890| 65 20 73 69 6d 70 6c 65 | 72 20 61 6e 64 20 6d 6f |e simple|r and mo|
|000008a0| 72 65 20 65 66 66 69 63 | 69 65 6e 74 2e 20 20 4c |re effic|ient. L|
|000008b0| 6f 6f 73 65 20 65 6e 64 | 73 20 68 61 76 65 20 62 |oose end|s have b|
|000008c0| 65 65 6e 20 74 69 65 64 | 20 75 70 2e 20 20 54 68 |een tied| up. Th|
|000008d0| 65 20 6c 61 6e 67 75 61 | 67 65 20 68 61 73 20 62 |e langua|ge has b|
|000008e0| 65 65 6e 20 67 69 76 65 | 6e 20 61 20 6e 65 77 20 |een give|n a new |
|000008f0| 73 79 6e 74 61 78 2e 20 | 20 54 68 72 6f 75 67 68 |syntax. | Through|
|00000900| 6f 75 74 20 74 68 69 73 | 20 70 72 6f 63 65 73 73 |out this| process|
|00000910| 2c 20 63 68 61 6e 67 65 | 73 20 74 6f 20 74 68 65 |, change|s to the|
|00000920| 20 6c 61 6e 67 75 61 67 | 65 20 64 65 73 69 67 6e | languag|e design|
|00000930| 20 68 61 76 65 20 62 65 | 65 6e 20 70 75 62 6c 69 | have be|en publi|
|00000940| 73 68 65 64 20 65 6c 65 | 63 74 72 6f 6e 69 63 61 |shed ele|ctronica|
|00000950| 6c 6c 79 20 69 6e 20 74 | 68 65 20 66 6f 72 6d 20 |lly in t|he form |
|00000960| 6f 66 20 64 65 73 69 67 | 6e 20 6e 6f 74 65 73 2e |of desig|n notes.|
|00000970| 0d 57 69 74 68 20 74 68 | 65 20 65 78 63 65 70 74 |.With th|e except|
|00000980| 69 6f 6e 20 6f 66 20 74 | 68 65 20 6d 61 63 72 6f |ion of t|he macro|
|00000990| 20 73 79 73 74 65 6d 2c | 20 74 68 65 20 63 75 72 | system,| the cur|
|000009a0| 72 65 6e 74 20 72 6f 75 | 6e 64 20 6f 66 20 6c 61 |rent rou|nd of la|
|000009b0| 6e 67 75 61 67 65 20 64 | 65 73 69 67 6e 20 69 73 |nguage d|esign is|
|000009c0| 20 6e 6f 77 20 65 73 73 | 65 6e 74 69 61 6c 6c 79 | now ess|entially|
|000009d0| 20 63 6f 6d 70 6c 65 74 | 65 2e 20 20 41 20 6e 65 | complet|e. A ne|
|000009e0| 77 20 44 79 6c 61 6e 20 | 6c 61 6e 67 75 61 67 65 |w Dylan |language|
|000009f0| 20 72 65 66 65 72 65 6e | 63 65 20 77 69 6c 6c 20 | referen|ce will |
|00000a00| 62 65 20 70 75 62 6c 69 | 73 68 65 64 20 65 61 72 |be publi|shed ear|
|00000a10| 6c 79 20 69 6e 20 31 39 | 39 35 2e 20 20 54 68 65 |ly in 19|95. The|
|00000a20| 20 6e 65 77 20 62 6f 6f | 6b 20 77 69 6c 6c 20 62 | new boo|k will b|
|00000a30| 65 20 74 68 65 20 64 65 | 66 69 6e 69 74 69 76 65 |e the de|finitive|
|00000a40| 20 73 70 65 63 69 66 69 | 63 61 74 69 6f 6e 20 6f | specifi|cation o|
|00000a50| 66 20 74 68 65 20 44 79 | 6c 61 6e 20 6c 61 6e 67 |f the Dy|lan lang|
|00000a60| 75 61 67 65 2e 20 20 41 | 70 70 6c 65 20 69 73 20 |uage. A|pple is |
|00000a70| 77 6f 72 6b 69 6e 67 20 | 63 6c 6f 73 65 6c 79 20 |working |closely |
|00000a80| 77 69 74 68 20 6f 74 68 | 65 72 20 44 79 6c 61 6e |with oth|er Dylan|
|00000a90| 20 69 6d 70 6c 65 6d 65 | 6e 74 6f 72 73 20 74 6f | impleme|ntors to|
|00000aa0| 20 65 6e 73 75 72 65 20 | 74 68 61 74 20 74 68 65 | ensure |that the|
|00000ab0| 20 6e 65 77 20 62 6f 6f | 6b 20 77 69 6c 6c 20 6e | new boo|k will n|
|00000ac0| 6f 74 20 62 65 20 41 70 | 70 6c 65 2d 73 70 65 63 |ot be Ap|ple-spec|
|00000ad0| 69 66 69 63 2c 20 62 75 | 74 20 77 69 6c 6c 20 61 |ific, bu|t will a|
|00000ae0| 70 70 6c 79 20 65 71 75 | 61 6c 6c 79 20 74 6f 20 |pply equ|ally to |
|00000af0| 61 6c 6c 20 44 79 6c 61 | 6e 20 69 6d 70 6c 65 6d |all Dyla|n implem|
|00000b00| 65 6e 74 61 74 69 6f 6e | 73 2e 0d 57 65 20 72 65 |entation|s..We re|
|00000b10| 61 6c 69 7a 65 20 74 68 | 61 74 20 6d 61 6e 79 20 |alize th|at many |
|00000b20| 70 65 6f 70 6c 65 20 77 | 61 6e 74 20 74 6f 20 72 |people w|ant to r|
|00000b30| 65 61 64 20 61 62 6f 75 | 74 20 44 79 6c 61 6e 20 |ead abou|t Dylan |
|00000b40| 6e 6f 77 21 20 20 46 6f | 72 20 74 68 61 74 20 72 |now! Fo|r that r|
|00000b50| 65 61 73 6f 6e 2c 20 74 | 6f 20 66 69 6c 6c 20 74 |eason, t|o fill t|
|00000b60| 68 65 20 67 61 70 20 75 | 6e 74 69 6c 20 74 68 65 |he gap u|ntil the|
|00000b70| 20 6e 65 77 20 62 6f 6f | 6b 20 69 73 20 70 75 62 | new boo|k is pub|
|00000b80| 6c 69 73 68 65 64 2c 20 | 77 65 d5 76 65 20 70 75 |lished, |we.ve pu|
|00000b90| 74 20 74 6f 67 65 74 68 | 65 72 20 74 68 65 20 44 |t togeth|er the D|
|00000ba0| 79 6c 61 6e 20 49 6e 74 | 65 72 69 6d 20 52 65 66 |ylan Int|erim Ref|
|00000bb0| 65 72 65 6e 63 65 20 4d | 61 6e 75 61 6c 2e 20 20 |erence M|anual. |
|00000bc0| 54 68 69 73 20 64 6f 63 | 75 6d 65 6e 74 20 69 73 |This doc|ument is|
|00000bd0| 20 61 6e 20 69 6e 74 65 | 72 69 6d 20 75 73 65 72 | an inte|rim user|
|00000be0| 20 72 65 66 65 72 65 6e | 63 65 20 66 6f 72 20 74 | referen|ce for t|
|00000bf0| 68 65 20 44 79 6c 61 6e | 20 6c 61 6e 67 75 61 67 |he Dylan| languag|
|00000c00| 65 2e 20 20 49 74 20 63 | 6f 6d 62 69 6e 65 73 20 |e. It c|ombines |
|00000c10| 74 68 65 20 6f 72 69 67 | 69 6e 61 6c 20 44 79 6c |the orig|inal Dyl|
|00000c20| 61 6e 20 62 6f 6f 6b 2c | 20 74 68 65 20 70 72 65 |an book,| the pre|
|00000c30| 76 69 6f 75 73 6c 79 20 | 70 75 62 6c 69 73 68 65 |viously |publishe|
|00000c40| 64 20 64 65 73 69 67 6e | 20 6e 6f 74 65 73 2c 20 |d design| notes, |
|00000c50| 61 6e 64 20 61 64 64 69 | 74 69 6f 6e 61 6c 20 70 |and addi|tional p|
|00000c60| 72 65 76 69 6f 75 73 6c | 79 20 75 6e 70 75 62 6c |reviousl|y unpubl|
|00000c70| 69 73 68 65 64 20 64 65 | 73 69 67 6e 20 64 65 63 |ished de|sign dec|
|00000c80| 69 73 69 6f 6e 73 20 61 | 73 20 6f 66 20 4d 61 79 |isions a|s of May|
|00000c90| 20 31 39 39 34 2e 0d 4f | 75 72 20 67 6f 61 6c 20 | 1994..O|ur goal |
|00000ca0| 66 6f 72 20 74 68 69 73 | 20 69 6e 74 65 72 69 6d |for this| interim|
|00000cb0| 20 64 6f 63 75 6d 65 6e | 74 20 68 61 73 20 62 65 | documen|t has be|
|00000cc0| 65 6e 20 74 6f 20 67 65 | 74 20 73 6f 6d 65 74 68 |en to ge|t someth|
|00000cd0| 69 6e 67 20 75 73 65 66 | 75 6c 20 6f 75 74 20 74 |ing usef|ul out t|
|00000ce0| 6f 20 79 6f 75 20 61 73 | 20 73 6f 6f 6e 20 61 73 |o you as| soon as|
|00000cf0| 20 70 6f 73 73 69 62 6c | 65 2c 20 6e 6f 74 20 74 | possibl|e, not t|
|00000d00| 6f 20 73 70 65 6e 64 20 | 74 69 6d 65 20 72 65 66 |o spend |time ref|
|00000d10| 69 6e 69 6e 67 20 69 74 | 2c 20 73 6f 20 69 74 d5 |ining it|, so it.|
|00000d20| 73 20 69 6d 70 6f 72 74 | 61 6e 74 20 74 6f 20 75 |s import|ant to u|
|00000d30| 6e 64 65 72 73 74 61 6e | 64 20 74 68 65 20 6c 69 |nderstan|d the li|
|00000d40| 6d 69 74 61 74 69 6f 6e | 73 20 6f 66 20 74 68 69 |mitation|s of thi|
|00000d50| 73 20 64 6f 63 75 6d 65 | 6e 74 3a 0d a5 09 54 68 |s docume|nt:...Th|
|00000d60| 69 73 20 69 73 20 61 20 | 76 65 72 79 20 72 6f 75 |is is a |very rou|
|00000d70| 67 68 20 64 6f 63 75 6d | 65 6e 74 2c 20 69 6e 74 |gh docum|ent, int|
|00000d80| 65 6e 64 65 64 20 6f 6e | 6c 79 20 61 73 20 61 20 |ended on|ly as a |
|00000d90| 74 65 6d 70 6f 72 61 72 | 79 20 75 73 65 72 20 72 |temporar|y user r|
|00000da0| 65 66 65 72 65 6e 63 65 | 20 75 6e 74 69 6c 20 74 |eference| until t|
|00000db0| 68 65 20 6e 65 77 20 44 | 79 6c 61 6e 20 62 6f 6f |he new D|ylan boo|
|00000dc0| 6b 20 69 73 20 72 65 61 | 64 79 2e 20 20 54 68 65 |k is rea|dy. The|
|00000dd0| 20 77 72 69 74 69 6e 67 | 20 61 6e 64 20 66 6f 72 | writing| and for|
|00000de0| 6d 61 74 74 69 6e 67 20 | 61 72 65 20 6d 65 73 73 |matting |are mess|
|00000df0| 79 20 69 6e 20 70 6c 61 | 63 65 73 2e 20 20 57 65 |y in pla|ces. We|
|00000e00| 20 68 6f 70 65 20 79 6f | 75 d5 6c 6c 20 65 78 63 | hope yo|u.ll exc|
|00000e10| 75 73 65 20 75 73 2e 0d | a5 09 54 68 69 73 20 64 |use us..|..This d|
|00000e20| 6f 63 75 6d 65 6e 74 20 | 69 73 20 6e 6f 74 20 69 |ocument |is not i|
|00000e30| 6e 74 65 6e 64 65 64 20 | 61 73 20 61 20 6c 61 6e |ntended |as a lan|
|00000e40| 67 75 61 67 65 20 73 70 | 65 63 69 66 69 63 61 74 |guage sp|ecificat|
|00000e50| 69 6f 6e 2e 20 20 54 68 | 65 72 65 20 61 72 65 20 |ion. Th|ere are |
|00000e60| 70 6c 61 63 65 73 20 77 | 68 65 72 65 20 69 74 20 |places w|here it |
|00000e70| 69 73 20 69 6d 70 72 65 | 63 69 73 65 20 6f 72 20 |is impre|cise or |
|00000e80| 69 6e 63 6f 6e 73 69 73 | 74 65 6e 74 2e 20 20 57 |inconsis|tent. W|
|00000e90| 65 20 68 6f 70 65 20 79 | 6f 75 20 77 69 6c 6c 20 |e hope y|ou will |
|00000ea0| 75 6e 64 65 72 73 74 61 | 6e 64 20 74 68 61 74 20 |understa|nd that |
|00000eb0| 74 68 65 73 65 20 61 72 | 65 20 73 68 6f 72 74 63 |these ar|e shortc|
|00000ec0| 6f 6d 69 6e 67 73 20 6f | 66 20 74 68 69 73 20 64 |omings o|f this d|
|00000ed0| 6f 63 75 6d 65 6e 74 2c | 20 61 6e 64 20 6e 6f 74 |ocument,| and not|
|00000ee0| 20 6f 66 20 74 68 65 20 | 6c 61 6e 67 75 61 67 65 | of the |language|
|00000ef0| 20 64 65 73 69 67 6e 20 | 61 73 20 61 20 77 68 6f | design |as a who|
|00000f00| 6c 65 2e 0d a5 09 54 68 | 69 73 20 64 6f 63 75 6d |le....Th|is docum|
|00000f10| 65 6e 74 20 69 73 20 6e | 6f 74 20 69 6e 74 65 6e |ent is n|ot inten|
|00000f20| 64 65 64 20 61 73 20 61 | 20 74 75 74 6f 72 69 61 |ded as a| tutoria|
|00000f30| 6c 20 6f 72 20 69 6e 74 | 72 6f 64 75 63 74 69 6f |l or int|roductio|
|00000f40| 6e 20 74 6f 20 44 79 6c | 61 6e 20 70 72 6f 67 72 |n to Dyl|an progr|
|00000f50| 61 6d 6d 69 6e 67 2e 20 | 20 57 65 20 61 73 73 75 |amming. | We assu|
|00000f60| 6d 65 20 74 68 61 74 20 | 79 6f 75 20 61 72 65 20 |me that |you are |
|00000f70| 61 6c 72 65 61 64 79 20 | 73 6f 6d 65 77 68 61 74 |already |somewhat|
|00000f80| 20 66 61 6d 69 6c 69 61 | 72 20 77 69 74 68 20 6f | familia|r with o|
|00000f90| 62 6a 65 63 74 20 6f 72 | 69 65 6e 74 65 64 20 70 |bject or|iented p|
|00000fa0| 72 6f 67 72 61 6d 6d 69 | 6e 67 2e 20 20 59 6f 75 |rogrammi|ng. You|
|00000fb0| 20 77 69 6c 6c 20 6f 66 | 74 65 6e 20 6e 65 65 64 | will of|ten need|
|00000fc0| 20 74 6f 20 64 65 76 69 | 73 65 20 79 6f 75 72 20 | to devi|se your |
|00000fd0| 6f 77 6e 20 65 78 61 6d | 70 6c 65 73 20 61 6e 64 |own exam|ples and|
|00000fe0| 20 66 6c 69 70 20 62 61 | 63 6b 20 61 6e 64 20 66 | flip ba|ck and f|
|00000ff0| 6f 72 74 68 20 74 68 72 | 6f 75 67 68 20 74 68 65 |orth thr|ough the|
|00001000| 20 6d 61 6e 75 61 6c 20 | 61 73 20 79 6f 75 20 72 | manual |as you r|
|00001010| 65 61 64 2e 0d 44 65 73 | 70 69 74 65 20 74 68 65 |ead..Des|pite the|
|00001020| 73 65 20 6c 69 6d 69 74 | 61 74 69 6f 6e 73 2c 20 |se limit|ations, |
|00001030| 77 65 20 74 68 69 6e 6b | 20 74 68 61 74 20 74 68 |we think| that th|
|00001040| 69 73 20 64 6f 63 75 6d | 65 6e 74 20 77 69 6c 6c |is docum|ent will|
|00001050| 20 62 65 20 75 73 65 66 | 75 6c 20 74 6f 20 70 65 | be usef|ul to pe|
|00001060| 6f 70 6c 65 20 77 68 6f | 20 77 61 6e 74 20 74 6f |ople who| want to|
|00001070| 20 6c 65 61 72 6e 20 61 | 62 6f 75 74 20 44 79 6c | learn a|bout Dyl|
|00001080| 61 6e 2c 20 65 73 70 65 | 63 69 61 6c 6c 79 20 74 |an, espe|cially t|
|00001090| 6f 20 74 68 6f 73 65 20 | 70 65 6f 70 6c 65 20 77 |o those |people w|
|000010a0| 68 6f 20 61 72 65 20 75 | 73 69 6e 67 20 61 6e 20 |ho are u|sing an |
|000010b0| 65 61 72 6c 79 20 44 79 | 6c 61 6e 20 69 6d 70 6c |early Dy|lan impl|
|000010c0| 65 6d 65 6e 74 61 74 69 | 6f 6e 2e 20 20 45 6e 6a |ementati|on. Enj|
|000010d0| 6f 79 2c 20 61 6e 64 20 | 6c 65 74 20 75 73 20 6b |oy, and |let us k|
|000010e0| 6e 6f 77 20 77 68 61 74 | 20 79 6f 75 20 74 68 69 |now what| you thi|
|000010f0| 6e 6b 21 0d 43 6f 6e 74 | 65 6e 74 73 0d 41 62 6f |nk!.Cont|ents.Abo|
|00001100| 75 74 20 74 68 69 73 20 | 4d 61 6e 75 61 6c 09 69 |ut this |Manual.i|
|00001110| 0d 43 6f 6e 74 65 6e 74 | 73 09 69 69 69 0d 46 6f |.Content|s.iii.Fo|
|00001120| 72 65 77 6f 72 64 20 74 | 6f 20 74 68 65 20 46 69 |reword t|o the Fi|
|00001130| 72 73 74 20 45 64 69 74 | 69 6f 6e 09 76 69 69 0d |rst Edit|ion.vii.|
|00001140| 50 72 65 66 61 63 65 20 | 74 6f 20 74 68 65 20 46 |Preface |to the F|
|00001150| 69 72 73 74 20 45 64 69 | 74 69 6f 6e 09 69 78 0d |irst Edi|tion.ix.|
|00001160| 41 63 6b 6e 6f 77 6c 65 | 64 67 6d 65 6e 74 73 09 |Acknowle|dgments.|
|00001170| 78 76 69 69 0d 31 2e 20 | 49 6e 74 72 6f 64 75 63 |xvii.1. |Introduc|
|00001180| 74 69 6f 6e 09 31 0d 4d | 61 6e 75 61 6c 20 4e 6f |tion.1.M|anual No|
|00001190| 74 61 74 69 6f 6e 09 31 | 0d 42 61 63 6b 67 72 6f |tation.1|.Backgro|
|000011a0| 75 6e 64 20 61 6e 64 20 | 47 6f 61 6c 73 09 33 0d |und and |Goals.3.|
|000011b0| 4c 61 6e 67 75 61 67 65 | 20 4f 76 65 72 76 69 65 |Language| Overvie|
|000011c0| 77 09 34 0d 32 2e 20 53 | 79 6e 74 61 78 09 37 0d |w.4.2. S|yntax.7.|
|000011d0| 4c 65 78 69 63 61 6c 20 | 4e 6f 74 61 74 69 6f 6e |Lexical |Notation|
|000011e0| 09 37 0d 45 78 70 72 65 | 73 73 69 6f 6e 73 09 31 |.7.Expre|ssions.1|
|000011f0| 30 0d 53 74 61 74 65 6d | 65 6e 74 20 62 6f 64 69 |0.Statem|ent bodi|
|00001200| 65 73 09 31 34 0d 53 70 | 65 63 69 61 6c 20 66 75 |es.14.Sp|ecial fu|
|00001210| 6e 63 74 69 6f 6e 20 63 | 61 6c 6c 20 73 79 6e 74 |nction c|all synt|
|00001220| 61 78 09 31 35 0d 53 79 | 6e 74 61 78 20 6f 66 20 |ax.15.Sy|ntax of |
|00001230| 44 79 6c 61 6e 20 46 69 | 6c 65 73 09 31 37 0d 33 |Dylan Fi|les.17.3|
|00001240| 2e 20 56 61 72 69 61 62 | 6c 65 73 09 31 39 0d 4d |. Variab|les.19.M|
|00001250| 6f 64 75 6c 65 20 56 61 | 72 69 61 62 6c 65 73 09 |odule Va|riables.|
|00001260| 31 39 0d 4c 65 78 69 63 | 61 6c 20 56 61 72 69 61 |19.Lexic|al Varia|
|00001270| 62 6c 65 73 09 32 30 0d | 43 68 65 63 6b 69 6e 67 |bles.20.|Checking|
|00001280| 20 54 79 70 65 73 09 32 | 31 0d 42 69 6e 64 69 6e | Types.2|1.Bindin|
|00001290| 67 20 4d 75 6c 74 69 70 | 6c 65 20 56 61 6c 75 65 |g Multip|le Value|
|000012a0| 73 09 32 32 0d 41 73 73 | 69 67 6e 6d 65 6e 74 09 |s.22.Ass|ignment.|
|000012b0| 32 34 0d 34 2e 20 43 6f | 6e 74 72 6f 6c 20 43 6f |24.4. Co|ntrol Co|
|000012c0| 6e 73 74 72 75 63 74 73 | 09 32 37 0d 54 72 75 65 |nstructs|.27.True|
|000012d0| 20 61 6e 64 20 46 61 6c | 73 65 09 32 37 0d 43 6f | and Fal|se.27.Co|
|000012e0| 6e 64 69 74 69 6f 6e 61 | 6c 73 09 32 37 0d 49 74 |nditiona|ls.27.It|
|000012f0| 65 72 61 74 69 6f 6e 20 | 43 6f 6e 73 74 72 75 63 |eration |Construc|
|00001300| 74 73 09 33 31 0d 4e 6f | 6e 2d 6c 6f 63 61 6c 20 |ts.31.No|n-local |
|00001310| 45 78 69 74 73 09 33 35 | 0d 35 2e 20 43 6f 6d 70 |Exits.35|.5. Comp|
|00001320| 61 72 69 73 6f 6e 73 09 | 33 39 0d 45 71 75 61 6c |arisons.|39.Equal|
|00001330| 69 74 79 20 43 6f 6d 70 | 61 72 69 73 6f 6e 73 09 |ity Comp|arisons.|
|00001340| 33 39 0d 4d 61 67 6e 69 | 74 75 64 65 20 43 6f 6d |39.Magni|tude Com|
|00001350| 70 61 72 69 73 6f 6e 73 | 09 34 30 0d 36 2e 20 46 |parisons|.40.6. F|
|00001360| 75 6e 63 74 69 6f 6e 73 | 09 34 33 0d 46 75 6e 63 |unctions|.43.Func|
|00001370| 74 69 6f 6e 20 44 65 66 | 69 6e 69 6e 67 20 46 6f |tion Def|ining Fo|
|00001380| 72 6d 73 09 34 33 0d 50 | 61 72 61 6d 65 74 65 72 |rms.43.P|arameter|
|00001390| 20 4c 69 73 74 73 09 34 | 38 0d 4d 65 74 68 6f 64 | Lists.4|8.Method|
|000013a0| 20 44 69 73 70 61 74 63 | 68 09 35 35 0d 52 65 66 | Dispatc|h.55.Ref|
|000013b0| 6c 65 63 74 69 76 65 20 | 4f 70 65 72 61 74 69 6f |lective |Operatio|
|000013c0| 6e 73 20 6f 6e 20 46 75 | 6e 63 74 69 6f 6e 73 09 |ns on Fu|nctions.|
|000013d0| 36 32 0d 54 68 65 20 63 | 6c 61 73 73 65 73 20 3c |62.The c|lasses <|
|000013e0| 66 75 6e 63 74 69 6f 6e | 3e 2c 20 3c 67 65 6e 65 |function|>, <gene|
|000013f0| 72 69 63 2d 66 75 6e 63 | 74 69 6f 6e 3e 2c 20 61 |ric-func|tion>, a|
|00001400| 6e 64 20 3c 6d 65 74 68 | 6f 64 3e 09 36 35 0d 37 |nd <meth|od>.65.7|
|00001410| 2e 20 43 6c 61 73 73 65 | 73 09 36 37 0d 49 6e 74 |. Classe|s.67.Int|
|00001420| 72 6f 64 75 63 74 69 6f | 6e 09 36 37 0d 44 65 66 |roductio|n.67.Def|
|00001430| 69 6e 69 6e 67 20 4e 65 | 77 20 43 6c 61 73 73 65 |ining Ne|w Classe|
|00001440| 73 09 36 39 0d 53 6c 6f | 74 20 4f 70 74 69 6f 6e |s.69.Slo|t Option|
|00001450| 73 09 37 31 0d 49 6e 73 | 74 61 6e 63 65 20 63 72 |s.71.Ins|tance cr|
|00001460| 65 61 74 69 6f 6e 09 37 | 38 0d 52 65 66 6c 65 63 |eation.7|8.Reflec|
|00001470| 74 69 76 65 20 4f 70 65 | 72 61 74 69 6f 6e 73 20 |tive Ope|rations |
|00001480| 6f 6e 20 54 79 70 65 73 | 09 38 34 0d 43 6f 65 72 |on Types|.84.Coer|
|00001490| 63 69 6e 67 20 61 6e 64 | 20 43 6f 70 79 69 6e 67 |cing and| Copying|
|000014a0| 20 4f 62 6a 65 63 74 73 | 09 38 36 0d 54 68 65 20 | Objects|.86.The |
|000014b0| 63 6c 61 73 73 65 73 20 | 3c 74 79 70 65 3e 2c 20 |classes |<type>, |
|000014c0| 3c 63 6c 61 73 73 3e 2c | 20 61 6e 64 20 3c 73 69 |<class>,| and <si|
|000014d0| 6e 67 6c 65 74 6f 6e 3e | 09 38 37 0d 38 2e 20 43 |ngleton>|.87.8. C|
|000014e0| 6f 6e 74 72 6f 6c 6c 69 | 6e 67 20 44 79 6e 61 6d |ontrolli|ng Dynam|
|000014f0| 69 73 6d 09 39 31 0d 44 | 65 63 6c 61 72 69 6e 67 |ism.91.D|eclaring|
|00001500| 20 63 68 61 72 61 63 74 | 65 72 69 73 74 69 63 73 | charact|eristics|
|00001510| 20 6f 66 20 63 6c 61 73 | 73 65 73 09 39 31 0d 44 | of clas|ses.91.D|
|00001520| 65 63 6c 61 72 69 6e 67 | 20 73 65 61 6c 69 6e 67 |eclaring| sealing|
|00001530| 20 6f 66 20 67 65 6e 65 | 72 69 63 20 66 75 6e 63 | of gene|ric func|
|00001540| 74 69 6f 6e 73 09 39 32 | 0d 54 68 65 20 73 65 61 |tions.92|.The sea|
|00001550| 6c 20 67 65 6e 65 72 69 | 63 20 66 6f 72 6d 09 39 |l generi|c form.9|
|00001560| 32 0d 39 2e 20 43 6f 6c | 6c 65 63 74 69 6f 6e 73 |2.9. Col|lections|
|00001570| 09 39 35 0d 46 75 6e 63 | 74 69 6f 6e 73 20 66 6f |.95.Func|tions fo|
|00001580| 72 20 43 6f 6c 6c 65 63 | 74 69 6f 6e 73 09 39 36 |r Collec|tions.96|
|00001590| 0d 46 75 6e 63 74 69 6f | 6e 73 20 66 6f 72 20 53 |.Functio|ns for S|
|000015a0| 65 71 75 65 6e 63 65 73 | 09 31 30 31 0d 54 68 65 |equences|.101.The|
|000015b0| 20 49 6e 73 74 61 6e 74 | 69 61 62 6c 65 20 43 6f | Instant|iable Co|
|000015c0| 6c 6c 65 63 74 69 6f 6e | 20 43 6c 61 73 73 65 73 |llection| Classes|
|000015d0| 09 31 31 30 0d 4f 70 65 | 72 61 74 69 6f 6e 73 20 |.110.Ope|rations |
|000015e0| 6f 6e 20 41 72 72 61 79 | 73 09 31 31 33 0d 4f 70 |on Array|s.113.Op|
|000015f0| 65 72 61 74 69 6f 6e 73 | 20 6f 6e 20 44 65 71 75 |erations| on Dequ|
|00001600| 65 73 09 31 31 35 0d 4f | 70 65 72 61 74 69 6f 6e |es.115.O|peration|
|00001610| 73 20 6f 6e 20 4c 69 73 | 74 73 09 31 31 36 0d 4f |s on Lis|ts.116.O|
|00001620| 70 65 72 61 74 69 6f 6e | 73 20 6f 6e 20 52 61 6e |peration|s on Ran|
|00001630| 67 65 73 09 31 31 38 0d | 4f 70 65 72 61 74 69 6f |ges.118.|Operatio|
|00001640| 6e 73 20 6f 6e 20 53 74 | 72 65 74 63 68 79 20 56 |ns on St|retchy V|
|00001650| 65 63 74 6f 72 73 09 31 | 31 39 0d 4f 70 65 72 61 |ectors.1|19.Opera|
|00001660| 74 69 6f 6e 73 20 6f 6e | 20 53 74 72 69 6e 67 73 |tions on| Strings|
|00001670| 09 31 31 39 0d 4f 70 65 | 72 61 74 69 6f 6e 73 20 |.119.Ope|rations |
|00001680| 6f 6e 20 54 61 62 6c 65 | 73 09 31 32 31 0d 4f 70 |on Table|s.121.Op|
|00001690| 65 72 61 74 69 6f 6e 73 | 20 6f 6e 20 56 65 63 74 |erations| on Vect|
|000016a0| 6f 72 73 09 31 32 32 0d | 54 68 65 20 49 74 65 72 |ors.122.|The Iter|
|000016b0| 61 74 69 6f 6e 20 50 72 | 6f 74 6f 63 6f 6c 09 31 |ation Pr|otocol.1|
|000016c0| 32 32 0d 49 74 65 72 61 | 74 69 6f 6e 20 53 74 61 |22.Itera|tion Sta|
|000016d0| 62 69 6c 69 74 79 20 61 | 6e 64 20 4e 61 74 75 72 |bility a|nd Natur|
|000016e0| 61 6c 20 4f 72 64 65 72 | 09 31 32 38 0d 43 6f 6c |al Order|.128.Col|
|000016f0| 6c 65 63 74 69 6f 6e 20 | 4b 65 79 73 20 09 31 32 |lection |Keys .12|
|00001700| 38 0d 4d 75 74 61 62 69 | 6c 69 74 79 09 31 33 30 |8.Mutabi|lity.130|
|00001710| 0d 43 6f 6c 6c 65 63 74 | 69 6f 6e 20 41 6c 69 67 |.Collect|ion Alig|
|00001720| 6e 6d 65 6e 74 09 31 33 | 32 0d 44 65 66 69 6e 69 |nment.13|2.Defini|
|00001730| 6e 67 20 61 20 4e 65 77 | 20 43 6f 6c 6c 65 63 74 |ng a New| Collect|
|00001740| 69 6f 6e 20 43 6c 61 73 | 73 3a 20 41 20 53 75 6d |ion Clas|s: A Sum|
|00001750| 6d 61 72 79 09 31 33 34 | 0d 31 30 2e 20 43 68 61 |mary.134|.10. Cha|
|00001760| 72 61 63 74 65 72 73 20 | 61 6e 64 20 53 79 6d 62 |racters |and Symb|
|00001770| 6f 6c 73 09 31 33 35 0d | 43 68 61 72 61 63 74 65 |ols.135.|Characte|
|00001780| 72 73 09 31 33 35 0d 53 | 79 6d 62 6f 6c 73 20 09 |rs.135.S|ymbols .|
|00001790| 31 33 36 0d 31 31 2e 20 | 4e 75 6d 62 65 72 73 20 |136.11. |Numbers |
|000017a0| 09 31 33 37 0d 41 75 74 | 6f 6d 61 74 69 63 20 54 |.137.Aut|omatic T|
|000017b0| 79 70 65 20 43 6f 6e 76 | 65 72 73 69 6f 6e 09 31 |ype Conv|ersion.1|
|000017c0| 33 37 0d 4e 75 6d 65 72 | 69 63 20 43 6c 61 73 73 |37.Numer|ic Class|
|000017d0| 65 73 09 31 33 38 0d 47 | 65 6e 65 72 61 6c 20 41 |es.138.G|eneral A|
|000017e0| 72 69 74 68 6d 65 74 69 | 63 20 46 75 6e 63 74 69 |rithmeti|c Functi|
|000017f0| 6f 6e 73 09 31 33 38 0d | 31 32 2e 20 4f 74 68 65 |ons.138.|12. Othe|
|00001800| 72 20 4f 70 65 72 61 74 | 69 6f 6e 73 09 31 34 33 |r Operat|ions.143|
|00001810| 0d 46 75 6e 63 74 69 6f | 6e 61 6c 20 4f 70 65 72 |.Functio|nal Oper|
|00001820| 61 74 69 6f 6e 73 09 31 | 34 33 0d 46 75 6e 63 74 |ations.1|43.Funct|
|00001830| 69 6f 6e 20 61 70 70 6c | 69 63 61 74 69 6f 6e 09 |ion appl|ication.|
|00001840| 31 34 36 0d 49 64 65 6e | 74 69 74 79 20 66 75 6e |146.Iden|tity fun|
|00001850| 63 74 69 6f 6e 09 31 34 | 36 0d 31 33 2e 20 43 6f |ction.14|6.13. Co|
|00001860| 6e 64 69 74 69 6f 6e 73 | 20 09 31 34 37 0d 42 61 |nditions| .147.Ba|
|00001870| 63 6b 67 72 6f 75 6e 64 | 09 31 34 37 0d 4f 76 65 |ckground|.147.Ove|
|00001880| 72 76 69 65 77 09 31 34 | 39 0d 53 70 65 63 69 66 |rview.14|9.Specif|
|00001890| 69 63 61 74 69 6f 6e 09 | 31 35 32 0d 31 34 2e 20 |ication.|152.14. |
|000018a0| 4d 6f 64 75 6c 65 73 09 | 31 36 33 0d 4f 76 65 72 |Modules.|163.Over|
|000018b0| 76 69 65 77 09 31 36 33 | 0d 50 72 6f 67 72 61 6d |view.163|.Program|
|000018c0| 73 2c 20 6d 6f 64 75 6c | 65 20 64 65 63 6c 61 72 |s, modul|e declar|
|000018d0| 61 74 69 6f 6e 73 09 31 | 36 34 0d 4d 6f 64 75 6c |ations.1|64.Modul|
|000018e0| 65 20 64 65 63 6c 61 72 | 61 74 69 6f 6e 73 09 31 |e declar|ations.1|
|000018f0| 36 35 0d 45 78 61 6d 70 | 6c 65 73 09 31 36 38 0d |65.Examp|les.168.|
|00001900| 31 35 2e 20 4c 69 62 72 | 61 72 69 65 73 09 31 37 |15. Libr|aries.17|
|00001910| 31 0d 41 70 70 65 6e 64 | 69 78 20 41 3a 20 48 6f |1.Append|ix A: Ho|
|00001920| 77 20 74 6f 20 67 65 74 | 20 6d 6f 72 65 20 69 6e |w to get| more in|
|00001930| 66 6f 72 6d 61 74 69 6f | 6e 09 31 37 35 0d 41 70 |formatio|n.175.Ap|
|00001940| 70 65 6e 64 69 78 20 42 | 3a 20 44 79 6c 61 6e 20 |pendix B|: Dylan |
|00001950| 53 79 6e 74 61 78 20 42 | 4e 46 09 31 37 37 0d 4c |Syntax B|NF.177.L|
|00001960| 65 78 69 63 61 6c 20 67 | 72 61 6d 6d 61 72 09 31 |exical g|rammar.1|
|00001970| 37 37 0d 50 68 72 61 73 | 65 20 47 72 61 6d 6d 61 |77.Phras|e Gramma|
|00001980| 72 09 31 38 33 0d 49 6e | 64 65 78 09 31 38 39 0d |r.183.In|dex.189.|
|00001990| 46 6f 72 65 77 6f 72 64 | 20 74 6f 20 74 68 65 20 |Foreword| to the |
|000019a0| 46 69 72 73 74 20 45 64 | 69 74 69 6f 6e 0d 62 79 |First Ed|ition.by|
|000019b0| 20 4c 61 72 72 79 20 54 | 65 73 6c 65 72 0d 49 6e | Larry T|esler.In|
|000019c0| 20 74 68 65 20 6d 69 64 | 2d 31 39 38 30 d5 73 2c | the mid|-1980.s,|
|000019d0| 20 61 20 6e 75 6d 62 65 | 72 20 6f 66 20 72 65 73 | a numbe|r of res|
|000019e0| 65 61 72 63 68 65 72 73 | 20 69 6e 20 41 70 70 6c |earchers| in Appl|
|000019f0| 65 d5 73 20 41 64 76 61 | 6e 63 65 64 20 54 65 63 |e.s Adva|nced Tec|
|00001a00| 68 6e 6f 6c 6f 67 79 20 | 47 72 6f 75 70 20 28 41 |hnology |Group (A|
|00001a10| 54 47 29 20 64 69 73 63 | 6f 76 65 72 65 64 20 74 |TG) disc|overed t|
|00001a20| 68 61 74 20 65 78 70 6c | 6f 72 61 74 69 6f 6e 20 |hat expl|oration |
|00001a30| 6f 66 20 74 68 65 69 72 | 20 73 6f 66 74 77 61 72 |of their| softwar|
|00001a40| 65 20 69 64 65 61 73 20 | 77 61 73 20 69 6e 63 72 |e ideas |was incr|
|00001a50| 65 61 73 69 6e 67 6c 79 | 20 63 6f 6e 73 74 72 61 |easingly| constra|
|00001a60| 69 6e 65 64 20 62 79 20 | 6c 61 6e 67 75 61 67 65 |ined by |language|
|00001a70| 73 20 61 6e 64 20 74 6f | 6f 6c 73 2e 20 20 54 68 |s and to|ols. Th|
|00001a80| 65 79 20 6d 69 67 72 61 | 74 65 64 20 61 20 73 69 |ey migra|ted a si|
|00001a90| 67 6e 69 66 69 63 61 6e | 74 20 6e 75 6d 62 65 72 |gnifican|t number|
|00001aa0| 20 6f 66 20 70 72 6f 6a | 65 63 74 73 20 66 72 6f | of proj|ects fro|
|00001ab0| 6d 20 4f 62 6a 65 63 74 | 20 50 61 73 63 61 6c 2c |m Object| Pascal,|
|00001ac0| 20 43 2c 20 61 6e 64 20 | 43 2b 2b 20 74 6f 20 53 | C, and |C++ to S|
|00001ad0| 6d 61 6c 6c 74 61 6c 6b | 2c 20 4c 69 73 70 2c 20 |malltalk|, Lisp, |
|00001ae0| 61 6e 64 20 76 61 72 69 | 6f 75 73 20 6b 6e 6f 77 |and vari|ous know|
|00001af0| 6c 65 64 67 65 2d 65 6e | 67 69 6e 65 65 72 69 6e |ledge-en|gineerin|
|00001b00| 67 20 65 6e 76 69 72 6f | 6e 6d 65 6e 74 73 2e 20 |g enviro|nments. |
|00001b10| 20 0d 53 6f 6f 6e 20 6d | 61 6e 61 67 65 6d 65 6e | .Soon m|anagemen|
|00001b20| 74 20 62 65 63 61 6d 65 | 20 63 6f 6e 63 65 72 6e |t became| concern|
|00001b30| 65 64 20 74 68 61 74 20 | 74 65 63 68 6e 6f 6c 6f |ed that |technolo|
|00001b40| 67 69 65 73 20 64 65 76 | 65 6c 6f 70 65 64 20 69 |gies dev|eloped i|
|00001b50| 6e 20 74 68 65 73 65 20 | 75 6e 72 65 6c 61 74 65 |n these |unrelate|
|00001b60| 64 20 65 6e 76 69 72 6f | 6e 6d 65 6e 74 73 20 77 |d enviro|nments w|
|00001b70| 6f 75 6c 64 20 6e 6f 74 | 20 62 65 20 61 62 6c 65 |ould not| be able|
|00001b80| 20 74 6f 20 70 6c 61 79 | 20 74 6f 67 65 74 68 65 | to play| togethe|
|00001b90| 72 2e 20 20 42 6f 6c 64 | 6c 79 2c 20 77 65 20 70 |r. Bold|ly, we p|
|00001ba0| 72 6f 70 6f 73 65 64 20 | 61 64 6f 70 74 69 6f 6e |roposed |adoption|
|00001bb0| 20 6f 66 20 61 20 73 69 | 6e 67 6c 65 20 64 79 6e | of a si|ngle dyn|
|00001bc0| 61 6d 69 63 20 70 72 6f | 67 72 61 6d 6d 69 6e 67 |amic pro|gramming|
|00001bd0| 20 65 6e 76 69 72 6f 6e | 6d 65 6e 74 20 74 68 72 | environ|ment thr|
|00001be0| 6f 75 67 68 6f 75 74 20 | 74 68 65 20 67 72 6f 75 |oughout |the grou|
|00001bf0| 70 2e 20 20 54 68 65 20 | 67 6f 61 6c 20 77 61 73 |p. The |goal was|
|00001c00| 20 61 63 6b 6e 6f 77 6c | 65 64 67 65 64 2c 20 62 | acknowl|edged, b|
|00001c10| 75 74 20 77 65 20 73 6f | 6f 6e 20 66 6f 75 6e 64 |ut we so|on found|
|00001c20| 20 74 68 61 74 20 6e 6f | 6e 65 20 6f 66 20 74 68 | that no|ne of th|
|00001c30| 65 20 65 6e 76 69 72 6f | 6e 6d 65 6e 74 73 20 77 |e enviro|nments w|
|00001c40| 65 20 77 65 72 65 20 75 | 73 69 6e 67 20 63 6f 75 |e were u|sing cou|
|00001c50| 6c 64 20 6d 65 65 74 20 | 65 76 65 72 79 20 6e 65 |ld meet |every ne|
|00001c60| 65 64 2e 20 20 46 6f 72 | 20 73 6f 6d 65 20 70 72 |ed. For| some pr|
|00001c70| 6f 6a 65 63 74 73 2c 20 | 43 6f 6d 6d 6f 6e 20 4c |ojects, |Common L|
|00001c80| 69 73 70 20 77 61 73 20 | 74 6f 6f 20 62 69 67 2e |isp was |too big.|
|00001c90| 20 20 46 6f 72 20 6f 74 | 68 65 72 73 2c 20 53 6d | For ot|hers, Sm|
|00001ca0| 61 6c 6c 74 61 6c 6b 2d | 38 30 d5 73 20 73 69 6d |alltalk-|80.s sim|
|00001cb0| 70 6c 69 63 69 74 79 20 | 77 61 73 20 6c 69 6d 69 |plicity |was limi|
|00001cc0| 74 69 6e 67 2e 20 20 41 | 6e 64 20 6f 66 20 63 6f |ting. A|nd of co|
|00001cd0| 75 72 73 65 2c 20 74 68 | 65 72 65 20 77 65 72 65 |urse, th|ere were|
|00001ce0| 20 66 6f 72 63 65 66 75 | 6c 6c 79 20 73 74 61 74 | forcefu|lly stat|
|00001cf0| 65 64 20 64 69 66 66 65 | 72 65 6e 63 65 73 20 69 |ed diffe|rences i|
|00001d00| 6e 20 70 65 72 73 6f 6e | 61 6c 20 70 72 65 66 65 |n person|al prefe|
|00001d10| 72 65 6e 63 65 2e 0d 48 | 75 6d 62 6c 65 64 2c 20 |rence..H|umbled, |
|00001d20| 77 65 20 64 65 63 69 64 | 65 64 20 74 6f 20 73 65 |we decid|ed to se|
|00001d30| 61 72 63 68 20 6f 75 74 | 73 69 64 65 20 74 68 65 |arch out|side the|
|00001d40| 20 63 6f 6d 70 61 6e 79 | 20 66 6f 72 20 61 6e 20 | company| for an |
|00001d50| 65 6e 76 69 72 6f 6e 6d | 65 6e 74 20 74 68 61 74 |environm|ent that|
|00001d60| 20 73 61 74 69 73 66 69 | 65 64 20 61 6c 6c 20 72 | satisfi|ed all r|
|00001d70| 65 71 75 69 72 65 6d 65 | 6e 74 73 d1 61 74 20 6c |equireme|nts.at l|
|00001d80| 65 61 73 74 20 74 65 63 | 68 6e 69 63 61 6c 20 63 |east tec|hnical c|
|00001d90| 6f 6e 73 69 64 65 72 61 | 74 69 6f 6e 73 2c 20 69 |onsidera|tions, i|
|00001da0| 66 20 6e 6f 74 20 6d 61 | 74 74 65 72 73 20 6f 66 |f not ma|tters of|
|00001db0| 20 74 61 73 74 65 2e 20 | 20 57 65 20 65 6e 63 6f | taste. | We enco|
|00001dc0| 75 6e 74 65 72 65 64 20 | 73 6f 6d 65 20 69 6e 74 |untered |some int|
|00001dd0| 65 72 65 73 74 69 6e 67 | 20 6c 61 6e 67 75 61 67 |eresting| languag|
|00001de0| 65 73 2c 20 69 6e 63 6c | 75 64 69 6e 67 20 45 69 |es, incl|uding Ei|
|00001df0| 66 66 65 6c 2c 20 53 65 | 6c 66 2c 20 42 65 74 61 |ffel, Se|lf, Beta|
|00001e00| 2c 20 61 6e 64 20 4f 61 | 6b 4c 69 73 70 2c 20 74 |, and Oa|kLisp, t|
|00001e10| 6f 20 6e 61 6d 65 20 6a | 75 73 74 20 61 20 66 65 |o name j|ust a fe|
|00001e20| 77 2c 20 62 75 74 20 77 | 65 20 63 6f 75 6c 64 20 |w, but w|e could |
|00001e30| 66 69 6e 64 20 6e 6f 20 | 65 6e 76 69 72 6f 6e 6d |find no |environm|
|00001e40| 65 6e 74 20 74 68 61 74 | 20 6d 65 74 20 6f 75 72 |ent that| met our|
|00001e50| 20 72 65 71 75 69 72 65 | 6d 65 6e 74 73 2e 20 20 | require|ments. |
|00001e60| 0d 52 65 6c 75 63 74 61 | 6e 74 6c 79 2c 20 77 65 |.Relucta|ntly, we|
|00001e70| 20 65 6e 74 65 72 74 61 | 69 6e 65 64 20 74 68 65 | enterta|ined the|
|00001e80| 20 74 68 6f 75 67 68 74 | 20 6f 66 20 64 65 73 69 | thought| of desi|
|00001e90| 67 6e 69 6e 67 20 79 65 | 74 20 61 6e 6f 74 68 65 |gning ye|t anothe|
|00001ea0| 72 20 6c 61 6e 67 75 61 | 67 65 2e 20 20 57 65 20 |r langua|ge. We |
|00001eb0| 65 6e 76 69 73 69 6f 6e | 65 64 20 61 20 6c 61 6e |envision|ed a lan|
|00001ec0| 67 75 61 67 65 20 74 68 | 61 74 20 77 6f 75 6c 64 |guage th|at would|
|00001ed0| 3a 0d a5 09 63 6f 6d 62 | 69 6e 65 20 74 68 65 20 |:...comb|ine the |
|00001ee0| 62 65 73 74 20 61 73 70 | 65 63 74 73 20 6f 66 20 |best asp|ects of |
|00001ef0| 4c 69 73 70 20 61 6e 64 | 20 53 6d 61 6c 6c 74 61 |Lisp and| Smallta|
|00001f00| 6c 6b 0d a5 09 70 72 6f | 76 69 64 65 20 73 74 61 |lk...pro|vide sta|
|00001f10| 74 69 63 20 6c 61 6e 67 | 75 61 67 65 20 75 73 65 |tic lang|uage use|
|00001f20| 72 73 20 61 6e 20 61 74 | 74 72 61 63 74 69 76 65 |rs an at|tractive|
|00001f30| 20 64 79 6e 61 6d 69 63 | 20 61 6c 74 65 72 6e 61 | dynamic| alterna|
|00001f40| 74 69 76 65 0d a5 09 62 | 65 20 70 72 61 63 74 69 |tive...b|e practi|
|00001f50| 63 61 6c 20 6f 6e 20 73 | 6d 61 6c 6c 20 6d 61 63 |cal on s|mall mac|
|00001f60| 68 69 6e 65 73 0d a5 09 | 70 72 6f 76 69 64 65 20 |hines...|provide |
|00001f70| 68 69 67 68 20 64 79 6e | 61 6d 69 73 6d 20 64 75 |high dyn|amism du|
|00001f80| 72 69 6e 67 20 72 61 70 | 69 64 20 70 72 6f 74 6f |ring rap|id proto|
|00001f90| 74 79 70 69 6e 67 20 61 | 6e 64 20 64 65 76 65 6c |typing a|nd devel|
|00001fa0| 6f 70 6d 65 6e 74 0d a5 | 09 70 72 6f 76 69 64 65 |opment..|.provide|
|00001fb0| 20 74 6f 6f 6c 73 20 74 | 6f 20 61 63 68 69 65 76 | tools t|o achiev|
|00001fc0| 65 20 63 6f 6d 6d 65 72 | 63 69 61 6c 20 70 65 72 |e commer|cial per|
|00001fd0| 66 6f 72 6d 61 6e 63 65 | 20 69 6e 20 70 72 6f 64 |formance| in prod|
|00001fe0| 75 63 74 69 6f 6e 20 63 | 6f 64 65 0d 44 75 72 69 |uction c|ode.Duri|
|00001ff0| 6e 67 20 74 68 69 73 20 | 65 78 65 72 63 69 73 65 |ng this |exercise|
|00002000| 2c 20 77 65 20 77 65 72 | 65 20 61 70 70 72 6f 61 |, we wer|e approa|
|00002010| 63 68 65 64 20 62 79 20 | 61 6e 20 41 70 70 6c 65 |ched by |an Apple|
|00002020| 20 65 6e 67 69 6e 65 65 | 72 69 6e 67 20 67 72 6f | enginee|ring gro|
|00002030| 75 70 20 73 65 65 6b 69 | 6e 67 20 61 6e 20 6f 62 |up seeki|ng an ob|
|00002040| 6a 65 63 74 2d 6f 72 69 | 65 6e 74 65 64 20 64 79 |ject-ori|ented dy|
|00002050| 6e 61 6d 69 63 20 6c 61 | 6e 67 75 61 67 65 20 66 |namic la|nguage f|
|00002060| 6f 72 20 61 20 63 6f 6e | 74 65 6d 70 6c 61 74 65 |or a con|template|
|00002070| 64 20 70 72 6f 64 75 63 | 74 2e 20 20 49 6e 73 74 |d produc|t. Inst|
|00002080| 65 61 64 20 6f 66 20 64 | 65 76 65 6c 6f 70 69 6e |ead of d|evelopin|
|00002090| 67 20 61 20 6c 61 6e 67 | 75 61 67 65 20 6a 75 73 |g a lang|uage jus|
|000020a0| 74 20 66 6f 72 20 72 65 | 73 65 61 72 63 68 2c 20 |t for re|search, |
|000020b0| 77 65 20 61 67 72 65 65 | 64 20 74 68 61 74 20 41 |we agree|d that A|
|000020c0| 54 47 20 77 6f 75 6c 64 | 20 73 74 72 69 76 65 20 |TG would| strive |
|000020d0| 74 6f 20 63 72 65 61 74 | 65 20 61 20 73 79 73 74 |to creat|e a syst|
|000020e0| 65 6d 20 70 72 61 63 74 | 69 63 61 6c 20 66 6f 72 |em pract|ical for|
|000020f0| 20 64 65 6c 69 76 65 72 | 79 20 6f 66 20 63 6f 6d | deliver|y of com|
|00002100| 6d 65 72 63 69 61 6c 20 | 61 70 70 6c 69 63 61 74 |mercial |applicat|
|00002110| 69 6f 6e 73 2e 0d 41 66 | 74 65 72 20 73 6f 6d 65 |ions..Af|ter some|
|00002120| 20 61 6e 61 6c 79 73 69 | 73 2c 20 77 65 20 63 6f | analysi|s, we co|
|00002130| 6e 63 6c 75 64 65 64 20 | 74 68 61 74 20 61 20 6c |ncluded |that a l|
|00002140| 61 6e 67 75 61 67 65 20 | 74 68 61 74 20 77 6f 75 |anguage |that wou|
|00002150| 6c 64 20 6d 65 65 74 20 | 61 6c 6c 20 6f 75 72 20 |ld meet |all our |
|00002160| 72 65 71 75 69 72 65 6d | 65 6e 74 73 20 77 6f 75 |requirem|ents wou|
|00002170| 6c 64 20 62 65 20 6d 6f | 72 65 20 6c 69 6b 65 20 |ld be mo|re like |
|00002180| 4c 69 73 70 20 74 68 61 | 6e 20 53 6d 61 6c 6c 74 |Lisp tha|n Smallt|
|00002190| 61 6c 6b 2c 20 65 78 63 | 65 70 74 20 74 68 61 74 |alk, exc|ept that|
|000021a0| 2c 20 6c 69 6b 65 20 53 | 6d 61 6c 6c 74 61 6c 6b |, like S|malltalk|
|000021b0| 2c 20 69 74 20 77 6f 75 | 6c 64 20 62 65 20 d2 6f |, it wou|ld be .o|
|000021c0| 62 6a 65 63 74 73 20 61 | 6c 6c 20 74 68 65 20 77 |bjects a|ll the w|
|000021d0| 61 79 20 64 6f 77 6e d3 | 2e 20 20 42 79 20 70 72 |ay down.|. By pr|
|000021e0| 6f 76 69 64 69 6e 67 20 | 61 6c 74 65 72 6e 61 74 |oviding |alternat|
|000021f0| 65 20 73 79 6e 74 61 78 | 65 73 20 61 74 6f 70 20 |e syntax|es atop |
|00002200| 74 68 65 20 65 78 74 72 | 65 6d 65 6c 79 20 6e 65 |the extr|emely ne|
|00002210| 75 74 72 61 6c 20 62 61 | 73 65 20 6f 66 20 4c 69 |utral ba|se of Li|
|00002220| 73 70 2c 20 77 65 20 62 | 65 6c 69 65 76 65 64 20 |sp, we b|elieved |
|00002230| 77 65 20 63 6f 75 6c 64 | 20 70 72 65 73 65 6e 74 |we could| present|
|00002240| 20 61 20 66 61 6d 69 6c | 69 61 72 20 66 61 63 65 | a famil|iar face|
|00002250| 20 6e 6f 74 20 6f 6e 6c | 79 20 74 6f 20 4c 69 73 | not onl|y to Lis|
|00002260| 70 20 70 72 6f 67 72 61 | 6d 6d 65 72 73 2c 20 62 |p progra|mmers, b|
|00002270| 75 74 20 61 6c 73 6f 20 | 74 6f 20 74 68 6f 73 65 |ut also |to those|
|00002280| 20 61 63 63 75 73 74 6f | 6d 65 64 20 74 6f 20 6f | accusto|med to o|
|00002290| 74 68 65 72 20 73 79 6e | 74 61 78 65 73 2c 20 69 |ther syn|taxes, i|
|000022a0| 6e 63 6c 75 64 69 6e 67 | 20 53 6d 61 6c 6c 74 61 |ncluding| Smallta|
|000022b0| 6c 6b d5 73 2e 0d 57 65 | 20 66 65 6c 74 20 77 65 |lk.s..We| felt we|
|000022c0| 20 63 6f 75 6c 64 20 6e | 6f 74 20 64 65 73 69 67 | could n|ot desig|
|000022d0| 6e 20 61 20 67 6f 6f 64 | 20 6c 61 6e 67 75 61 67 |n a good| languag|
|000022e0| 65 20 77 69 74 68 6f 75 | 74 20 63 6f 6e 63 75 72 |e withou|t concur|
|000022f0| 72 65 6e 74 6c 79 20 69 | 6d 70 6c 65 6d 65 6e 74 |rently i|mplement|
|00002300| 69 6e 67 20 69 74 2e 20 | 20 42 75 74 20 77 65 20 |ing it. | But we |
|00002310| 64 69 64 20 6e 6f 74 20 | 68 61 76 65 20 74 68 65 |did not |have the|
|00002320| 20 73 6b 69 6c 6c 73 20 | 69 6e 20 68 6f 75 73 65 | skills |in house|
|00002330| 20 74 6f 20 69 6d 70 6c | 65 6d 65 6e 74 20 74 68 | to impl|ement th|
|00002340| 65 20 6b 69 6e 64 20 6f | 66 20 6c 61 6e 67 75 61 |e kind o|f langua|
|00002350| 67 65 20 77 65 20 65 6e | 76 69 73 69 6f 6e 65 64 |ge we en|visioned|
|00002360| 2e 20 20 41 72 6f 75 6e | 64 20 74 68 61 74 20 74 |. Aroun|d that t|
|00002370| 69 6d 65 20 77 65 20 77 | 65 72 65 20 61 70 70 72 |ime we w|ere appr|
|00002380| 6f 61 63 68 65 64 20 62 | 79 20 4d 61 73 73 61 63 |oached b|y Massac|
|00002390| 68 75 73 65 74 74 73 2d | 62 61 73 65 64 20 43 6f |husetts-|based Co|
|000023a0| 72 61 6c 20 53 6f 66 74 | 77 61 72 65 2c 20 49 6e |ral Soft|ware, In|
|000023b0| 63 2e 2c 20 77 68 69 63 | 68 20 77 61 73 20 73 65 |c., whic|h was se|
|000023c0| 65 6b 69 6e 67 20 74 6f | 20 62 65 20 61 63 71 75 |eking to| be acqu|
|000023d0| 69 72 65 64 2e 20 20 43 | 6f 72 61 6c 20 68 61 64 |ired. C|oral had|
|000023e0| 20 63 72 65 61 74 65 64 | 20 61 20 70 6f 70 75 6c | created| a popul|
|000023f0| 61 72 20 43 6f 6d 6d 6f | 6e 20 4c 69 73 70 20 69 |ar Commo|n Lisp i|
|00002400| 6d 70 6c 65 6d 65 6e 74 | 61 74 69 6f 6e 20 64 69 |mplement|ation di|
|00002410| 73 74 69 6e 67 75 69 73 | 68 65 64 20 62 79 20 69 |stinguis|hed by i|
|00002420| 74 73 20 73 6d 61 6c 6c | 20 6d 65 6d 6f 72 79 20 |ts small| memory |
|00002430| 66 6f 6f 74 70 72 69 6e | 74 2c 20 76 65 72 79 20 |footprin|t, very |
|00002440| 75 73 61 62 6c 65 20 73 | 70 65 65 64 2c 20 69 6e |usable s|peed, in|
|00002450| 74 65 72 65 73 74 69 6e | 67 20 6f 62 6a 65 63 74 |terestin|g object|
|00002460| 20 73 79 73 74 65 6d 2c | 20 61 6e 64 20 74 68 6f | system,| and tho|
|00002470| 72 6f 75 67 68 20 69 6e | 74 65 67 72 61 74 69 6f |rough in|tegratio|
|00002480| 6e 20 69 6e 74 6f 20 74 | 68 65 20 4d 61 63 69 6e |n into t|he Macin|
|00002490| 74 6f 73 68 2e 20 20 41 | 20 66 65 77 20 6d 6f 6e |tosh. A| few mon|
|000024a0| 74 68 73 20 6c 61 74 65 | 72 2c 20 77 65 20 61 63 |ths late|r, we ac|
|000024b0| 71 75 69 72 65 64 20 74 | 68 65 20 61 73 73 65 74 |quired t|he asset|
|000024c0| 73 20 6f 66 20 74 68 65 | 20 63 6f 6d 70 61 6e 79 |s of the| company|
|000024d0| 2c 20 68 69 72 65 64 20 | 6d 6f 73 74 20 6f 66 20 |, hired |most of |
|000024e0| 74 68 65 20 73 74 61 66 | 66 2c 20 61 6e 64 20 63 |the staf|f, and c|
|000024f0| 72 65 61 74 65 64 20 d2 | 41 54 47 20 45 61 73 74 |reated .|ATG East|
|00002500| d3 20 69 6e 20 43 61 6d | 62 72 69 64 67 65 2e 20 |. in Cam|bridge. |
|00002510| 20 0d 57 65 20 61 73 6b | 65 64 20 74 68 65 20 6e | .We ask|ed the n|
|00002520| 65 77 20 67 72 6f 75 70 | 20 74 6f 20 61 63 63 65 |ew group| to acce|
|00002530| 70 74 20 74 77 6f 20 63 | 68 61 6c 6c 65 6e 67 65 |pt two c|hallenge|
|00002540| 73 3a 20 28 31 29 20 63 | 6f 6e 74 69 6e 75 65 20 |s: (1) c|ontinue |
|00002550| 74 6f 20 64 65 76 65 6c | 6f 70 20 74 68 65 69 72 |to devel|op their|
|00002560| 20 43 6f 6d 6d 6f 6e 20 | 4c 69 73 70 20 69 6d 70 | Common |Lisp imp|
|00002570| 6c 65 6d 65 6e 74 61 74 | 69 6f 6e 2c 20 61 64 64 |lementat|ion, add|
|00002580| 69 6e 67 20 43 4c 4f 53 | 2c 20 65 70 68 65 6d 65 |ing CLOS|, epheme|
|00002590| 72 61 6c 20 67 61 72 62 | 61 67 65 20 63 6f 6c 6c |ral garb|age coll|
|000025a0| 65 63 74 69 6f 6e 2c 20 | 61 6e 64 20 6f 74 68 65 |ection, |and othe|
|000025b0| 72 20 66 65 61 74 75 72 | 65 73 3b 20 61 6e 64 20 |r featur|es; and |
|000025c0| 28 32 29 20 64 65 76 65 | 6c 6f 70 20 61 20 6e 65 |(2) deve|lop a ne|
|000025d0| 77 20 6c 61 6e 67 75 61 | 67 65 20 61 6e 64 20 65 |w langua|ge and e|
|000025e0| 6e 76 69 72 6f 6e 6d 65 | 6e 74 20 6d 65 65 74 69 |nvironme|nt meeti|
|000025f0| 6e 67 20 74 68 65 20 61 | 66 6f 72 65 6d 65 6e 74 |ng the a|forement|
|00002600| 69 6f 6e 65 64 20 72 65 | 71 75 69 72 65 6d 65 6e |ioned re|quiremen|
|00002610| 74 73 2e 20 20 54 68 65 | 79 20 61 63 63 65 70 74 |ts. The|y accept|
|00002620| 65 64 20 62 6f 74 68 20 | 63 68 61 6c 6c 65 6e 67 |ed both |challeng|
|00002630| 65 73 2e 20 20 54 68 65 | 20 66 69 72 73 74 20 6c |es. The| first l|
|00002640| 65 64 20 74 6f 20 74 68 | 65 20 76 65 72 79 20 70 |ed to th|e very p|
|00002650| 6f 70 75 6c 61 72 20 70 | 72 6f 64 75 63 74 20 6b |opular p|roduct k|
|00002660| 6e 6f 77 6e 20 61 73 20 | 4d 61 63 69 6e 74 6f 73 |nown as |Macintos|
|00002670| 68 20 43 6f 6d 6d 6f 6e | 20 4c 69 73 70 20 28 4d |h Common| Lisp (M|
|00002680| 43 4c 29 20 32 2e 30 2e | 20 20 54 68 65 20 73 65 |CL) 2.0.| The se|
|00002690| 63 6f 6e 64 20 6c 65 64 | 20 74 6f 20 44 79 6c 61 |cond led| to Dyla|
|000026a0| 6e 2e 0d 44 79 6c 61 6e | 20 69 73 20 6e 6f 74 20 |n..Dylan| is not |
|000026b0| 79 65 74 20 61 20 66 72 | 6f 7a 65 6e 20 6c 61 6e |yet a fr|ozen lan|
|000026c0| 67 75 61 67 65 2e 20 20 | 44 65 62 61 74 65 73 20 |guage. |Debates |
|000026d0| 61 62 6f 75 74 20 70 72 | 6f 70 6f 73 65 64 20 69 |about pr|oposed i|
|000026e0| 6d 70 72 6f 76 65 6d 65 | 6e 74 73 20 63 6f 6e 74 |mproveme|nts cont|
|000026f0| 69 6e 75 65 2e 20 20 42 | 75 74 20 65 6e 6f 75 67 |inue. B|ut enoug|
|00002700| 68 20 6f 66 20 44 79 6c | 61 6e 20 68 61 73 20 62 |h of Dyl|an has b|
|00002710| 65 65 6e 20 64 65 73 69 | 67 6e 65 64 2c 20 69 6d |een desi|gned, im|
|00002720| 70 6c 65 6d 65 6e 74 65 | 64 2c 20 61 6e 64 20 65 |plemente|d, and e|
|00002730| 78 70 65 72 69 65 6e 63 | 65 64 20 74 68 61 74 20 |xperienc|ed that |
|00002740| 6e 6f 77 20 69 73 20 74 | 68 65 20 74 69 6d 65 20 |now is t|he time |
|00002750| 74 6f 20 74 61 6b 65 20 | 69 74 20 70 75 62 6c 69 |to take |it publi|
|00002760| 63 20 61 6e 64 20 62 65 | 6e 65 66 69 74 20 66 72 |c and be|nefit fr|
|00002770| 6f 6d 20 74 68 65 20 77 | 69 73 64 6f 6d 20 6f 66 |om the w|isdom of|
|00002780| 20 61 20 77 69 64 65 72 | 20 70 72 6f 67 72 61 6d | a wider| program|
|00002790| 6d 69 6e 67 20 63 6f 6d | 6d 75 6e 69 74 79 2e 20 |ming com|munity. |
|000027a0| 20 57 65 20 77 65 6c 63 | 6f 6d 65 20 79 6f 75 72 | We welc|ome your|
|000027b0| 20 63 6f 6d 6d 65 6e 74 | 73 2e 0d 09 4c 61 72 72 | comment|s...Larr|
|000027c0| 79 20 54 65 73 6c 65 72 | 0d 09 43 75 70 65 72 74 |y Tesler|..Cupert|
|000027d0| 69 6e 6f 2c 20 43 61 6c | 69 66 6f 72 6e 69 61 0d |ino, Cal|ifornia.|
|000027e0| 09 4d 61 72 63 68 20 31 | 39 39 32 0d 50 72 65 66 |.March 1|992.Pref|
|000027f0| 61 63 65 20 74 6f 20 74 | 68 65 20 46 69 72 73 74 |ace to t|he First|
|00002800| 20 45 64 69 74 69 6f 6e | 0d 62 79 20 49 6b 65 20 | Edition|.by Ike |
|00002810| 4e 61 73 73 69 0d 53 69 | 6e 63 65 20 69 74 73 20 |Nassi.Si|nce its |
|00002820| 66 6f 75 6e 64 69 6e 67 | 2c 20 41 70 70 6c 65 20 |founding|, Apple |
|00002830| 43 6f 6d 70 75 74 65 72 | 20 68 61 73 20 62 65 65 |Computer| has bee|
|00002840| 6e 20 64 65 64 69 63 61 | 74 65 64 20 74 6f 20 74 |n dedica|ted to t|
|00002850| 68 65 20 63 61 75 73 65 | 20 6f 66 20 6d 6f 76 69 |he cause| of movi|
|00002860| 6e 67 20 74 68 65 20 70 | 6f 77 65 72 20 6f 66 20 |ng the p|ower of |
|00002870| 63 6f 6d 70 75 74 65 72 | 73 20 69 6e 74 6f 20 74 |computer|s into t|
|00002880| 68 65 20 68 61 6e 64 73 | 20 6f 66 20 63 6f 6d 70 |he hands| of comp|
|00002890| 75 74 65 72 20 75 73 65 | 72 73 2e 20 20 4f 75 72 |uter use|rs. Our|
|000028a0| 20 6d 6f 73 74 20 73 75 | 63 63 65 73 73 66 75 6c | most su|ccessful|
|000028b0| 20 70 72 6f 64 75 63 74 | 20 74 6f 20 64 61 74 65 | product| to date|
|000028c0| 20 68 61 73 20 62 65 65 | 6e 20 74 68 65 20 41 70 | has bee|n the Ap|
|000028d0| 70 6c 65 a8 20 4d 61 63 | 69 6e 74 6f 73 68 aa 2e |ple. Mac|intosh..|
|000028e0| 20 20 53 69 6e 63 65 20 | 69 74 73 20 69 6e 74 72 | Since |its intr|
|000028f0| 6f 64 75 63 74 69 6f 6e | 20 65 69 67 68 74 20 79 |oduction| eight y|
|00002900| 65 61 72 73 20 61 67 6f | 2c 20 4d 61 63 69 6e 74 |ears ago|, Macint|
|00002910| 6f 73 68 20 68 61 73 20 | 64 65 66 69 6e 65 64 20 |osh has |defined |
|00002920| 74 68 65 20 73 74 61 74 | 65 20 6f 66 20 74 68 65 |the stat|e of the|
|00002930| 20 61 72 74 20 69 6e 20 | 63 6f 6d 70 75 74 65 72 | art in |computer|
|00002940| 20 65 61 73 65 20 6f 66 | 20 6c 65 61 72 6e 69 6e | ease of| learnin|
|00002950| 67 20 61 6e 64 20 65 61 | 73 65 20 6f 66 20 75 73 |g and ea|se of us|
|00002960| 65 2e 20 20 4d 61 63 69 | 6e 74 6f 73 68 2c 20 61 |e. Maci|ntosh, a|
|00002970| 6c 6d 6f 73 74 20 73 69 | 6e 67 6c 65 2d 68 61 6e |lmost si|ngle-han|
|00002980| 64 65 64 6c 79 2c 20 68 | 61 73 20 74 72 61 6e 73 |dedly, h|as trans|
|00002990| 66 6f 72 6d 65 64 20 74 | 68 65 20 77 61 79 20 77 |formed t|he way w|
|000029a0| 65 20 75 73 65 20 63 6f | 6d 70 75 74 65 72 73 2e |e use co|mputers.|
|000029b0| 0d 49 74 d5 73 20 74 69 | 6d 65 20 74 6f 20 74 72 |.It.s ti|me to tr|
|000029c0| 61 6e 73 66 6f 72 6d 20 | 74 68 65 20 77 61 79 20 |ansform |the way |
|000029d0| 77 65 20 70 72 6f 67 72 | 61 6d 20 74 68 65 6d 2c |we progr|am them,|
|000029e0| 20 61 73 20 77 65 6c 6c | 2e 0d 49 6e 20 31 39 38 | as well|..In 198|
|000029f0| 34 2c 20 62 65 66 6f 72 | 65 20 4d 61 63 69 6e 74 |4, befor|e Macint|
|00002a00| 6f 73 68 2c 20 63 6f 6d | 70 75 74 65 72 20 75 73 |osh, com|puter us|
|00002a10| 65 72 73 20 77 65 72 65 | 20 61 73 6b 65 64 20 74 |ers were| asked t|
|00002a20| 6f 20 6d 61 6b 65 20 74 | 68 65 69 72 20 77 6f 72 |o make t|heir wor|
|00002a30| 6b 20 70 61 74 74 65 72 | 6e 73 20 63 6f 6e 66 6f |k patter|ns confo|
|00002a40| 72 6d 20 20 74 6f 20 74 | 68 65 20 72 65 71 75 69 |rm to t|he requi|
|00002a50| 72 65 6d 65 6e 74 73 20 | 6f 66 20 74 68 65 20 6d |rements |of the m|
|00002a60| 61 63 68 69 6e 65 20 69 | 6e 20 66 72 6f 6e 74 20 |achine i|n front |
|00002a70| 6f 66 20 74 68 65 6d 2e | 20 20 41 6c 6c 20 61 73 |of them.| All as|
|00002a80| 70 65 63 74 73 20 6f 66 | 20 63 6f 6d 70 75 74 69 |pects of| computi|
|00002a90| 6e 67 20 77 65 72 65 20 | 70 72 65 73 65 6e 74 65 |ng were |presente|
|00002aa0| 64 20 69 6e 20 74 65 72 | 6d 73 20 64 65 66 69 6e |d in ter|ms defin|
|00002ab0| 65 64 20 62 79 20 74 68 | 65 20 63 6f 6d 70 75 74 |ed by th|e comput|
|00002ac0| 65 72 2e 20 20 54 68 65 | 20 75 73 65 72 20 77 61 |er. The| user wa|
|00002ad0| 73 20 67 69 76 65 6e 20 | 6c 69 74 74 6c 65 20 63 |s given |little c|
|00002ae0| 6f 6e 74 72 6f 6c 20 6f | 76 65 72 20 74 68 65 20 |ontrol o|ver the |
|00002af0| 6f 72 67 61 6e 69 7a 61 | 74 69 6f 6e 20 6f 66 20 |organiza|tion of |
|00002b00| 64 61 74 61 2c 20 74 68 | 65 20 6f 72 64 65 72 20 |data, th|e order |
|00002b10| 69 6e 20 77 68 69 63 68 | 20 74 61 73 6b 73 20 77 |in which| tasks w|
|00002b20| 65 72 65 20 70 65 72 66 | 6f 72 6d 65 64 2c 20 61 |ere perf|ormed, a|
|00002b30| 6e 64 20 74 68 65 20 6d | 61 6e 6e 65 72 20 69 6e |nd the m|anner in|
|00002b40| 20 77 68 69 63 68 20 77 | 6f 72 6b 20 77 61 73 20 | which w|ork was |
|00002b50| 70 72 65 73 65 6e 74 65 | 64 2e 20 20 54 68 65 20 |presente|d. The |
|00002b60| 6d 61 63 68 69 6e 65 20 | 70 72 65 73 65 6e 74 65 |machine |presente|
|00002b70| 64 20 61 20 6d 6f 64 65 | 6c 20 77 68 69 63 68 20 |d a mode|l which |
|00002b80| 68 61 64 20 6c 69 74 74 | 6c 65 20 74 6f 20 64 6f |had litt|le to do|
|00002b90| 20 77 69 74 68 20 74 68 | 65 20 75 73 65 72 d5 73 | with th|e user.s|
|00002ba0| 20 77 6f 72 6c 64 2c 20 | 61 6e 64 20 74 68 65 20 | world, |and the |
|00002bb0| 75 73 65 72 20 68 61 64 | 20 6e 6f 20 63 68 6f 69 |user had| no choi|
|00002bc0| 63 65 20 62 75 74 20 74 | 6f 20 63 6f 6e 66 6f 72 |ce but t|o confor|
|00002bd0| 6d 20 74 6f 20 74 68 69 | 73 20 6d 6f 64 65 6c 2e |m to thi|s model.|
|00002be0| 20 20 52 61 74 68 65 72 | 20 74 68 61 6e 20 66 61 | Rather| than fa|
|00002bf0| 63 69 6c 69 74 61 74 65 | 20 77 6f 72 6b 2c 20 74 |cilitate| work, t|
|00002c00| 68 65 20 63 6f 6d 70 75 | 74 65 72 20 63 61 6d 65 |he compu|ter came|
|00002c10| 20 62 65 74 77 65 65 6e | 20 74 68 65 20 75 73 65 | between| the use|
|00002c20| 72 20 61 6e 64 20 74 68 | 65 20 75 73 65 72 d5 73 |r and th|e user.s|
|00002c30| 20 77 6f 72 6b 2e 20 20 | 54 68 65 20 75 73 65 72 | work. |The user|
|00002c40| 20 68 61 64 20 74 6f 20 | 6f 76 65 72 63 6f 6d 65 | had to |overcome|
|00002c50| 20 74 68 65 20 63 6f 6d | 70 75 74 65 72 20 62 65 | the com|puter be|
|00002c60| 66 6f 72 65 20 67 65 74 | 74 69 6e 67 20 61 6e 79 |fore get|ting any|
|00002c70| 20 77 6f 72 6b 20 64 6f | 6e 65 2e 0d 49 6e 20 31 | work do|ne..In 1|
|00002c80| 39 39 32 2c 20 74 68 65 | 20 73 69 74 75 61 74 69 |992, the| situati|
|00002c90| 6f 6e 20 69 73 20 73 74 | 69 6c 6c 20 6d 75 63 68 |on is st|ill much|
|00002ca0| 20 74 68 65 20 73 61 6d | 65 20 66 6f 72 20 70 72 | the sam|e for pr|
|00002cb0| 6f 67 72 61 6d 6d 65 72 | 73 2e 20 20 54 68 65 72 |ogrammer|s. Ther|
|00002cc0| 65 20 69 73 20 73 74 69 | 6c 6c 20 61 20 6c 61 72 |e is sti|ll a lar|
|00002cd0| 67 65 20 67 61 70 20 62 | 65 74 77 65 65 6e 20 73 |ge gap b|etween s|
|00002ce0| 6f 66 74 77 61 72 65 20 | 70 72 6f 64 75 63 74 20 |oftware |product |
|00002cf0| 63 6f 6e 63 65 70 74 69 | 6f 6e 20 61 6e 64 20 73 |concepti|on and s|
|00002d00| 6f 66 74 77 61 72 65 20 | 70 72 6f 64 75 63 74 20 |oftware |product |
|00002d10| 72 65 61 6c 69 7a 61 74 | 69 6f 6e 2e 20 20 54 68 |realizat|ion. Th|
|00002d20| 69 73 20 67 61 70 20 69 | 73 20 66 69 6c 6c 65 64 |is gap i|s filled|
|00002d30| 20 77 69 74 68 20 62 69 | 74 73 2c 20 62 79 74 65 | with bi|ts, byte|
|00002d40| 73 2c 20 61 72 72 61 79 | 73 2c 20 6d 61 63 68 69 |s, array|s, machi|
|00002d50| 6e 65 2d 6c 65 76 65 6c | 20 64 65 62 75 67 67 65 |ne-level| debugge|
|00002d60| 72 73 2c 20 64 61 6e 67 | 6c 69 6e 67 20 70 6f 69 |rs, dang|ling poi|
|00002d70| 6e 74 65 72 73 2c 20 68 | 6f 75 72 73 2d 6c 6f 6e |nters, h|ours-lon|
|00002d80| 67 20 72 65 63 6f 6d 70 | 69 6c 61 74 69 6f 6e 73 |g recomp|ilations|
|00002d90| 2c 20 61 6e 64 20 6d 6f | 6e 74 68 73 2d 6c 6f 6e |, and mo|nths-lon|
|00002da0| 67 20 64 65 73 69 67 6e | 20 61 6e 64 20 72 65 64 |g design| and red|
|00002db0| 65 73 69 67 6e 20 63 79 | 63 6c 65 73 2e 20 20 50 |esign cy|cles. P|
|00002dc0| 72 6f 67 72 61 6d 6d 65 | 72 73 20 61 72 65 20 73 |rogramme|rs are s|
|00002dd0| 74 69 6c 6c 20 61 73 6b | 65 64 20 74 6f 20 70 72 |till ask|ed to pr|
|00002de0| 65 73 65 6e 74 20 74 68 | 65 69 72 20 68 69 67 68 |esent th|eir high|
|00002df0| 2d 6c 65 76 65 6c 20 69 | 64 65 61 73 20 6f 66 20 |-level i|deas of |
|00002e00| 70 72 6f 67 72 61 6d 20 | 62 65 68 61 76 69 6f 72 |program |behavior|
|00002e10| 20 69 6e 20 6c 6f 77 2d | 6c 65 76 65 6c 20 74 65 | in low-|level te|
|00002e20| 72 6d 73 20 64 65 66 69 | 6e 65 64 20 62 79 20 43 |rms defi|ned by C|
|00002e30| 50 55 20 61 72 63 68 69 | 74 65 63 74 75 72 65 73 |PU archi|tectures|
|00002e40| 20 6f 66 20 74 68 65 20 | 65 61 72 6c 79 20 31 39 | of the |early 19|
|00002e50| 37 30 d5 73 2e 20 20 50 | 72 6f 67 72 61 6d 6d 69 |70.s. P|rogrammi|
|00002e60| 6e 67 20 77 6f 72 6b 20 | 66 6c 6f 77 20 69 73 20 |ng work |flow is |
|00002e70| 73 74 69 6c 6c 20 64 69 | 63 74 61 74 65 64 20 62 |still di|ctated b|
|00002e80| 79 20 74 68 65 20 68 69 | 73 74 6f 72 69 63 61 6c |y the hi|storical|
|00002e90| 20 6c 69 6d 69 74 61 74 | 69 6f 6e 73 20 6f 66 20 | limitat|ions of |
|00002ea0| 63 6f 6d 70 69 6c 65 72 | 73 2c 20 6c 69 6e 6b 65 |compiler|s, linke|
|00002eb0| 72 73 2c 20 61 6e 64 20 | 64 65 62 75 67 67 65 72 |rs, and |debugger|
|00002ec0| 73 2e 20 20 50 72 6f 67 | 72 61 6d 20 64 65 73 69 |s. Prog|ram desi|
|00002ed0| 67 6e 20 69 6e 20 31 39 | 39 32 20 69 73 20 72 65 |gn in 19|92 is re|
|00002ee0| 6d 69 6e 69 73 63 65 6e | 74 20 6f 66 20 74 79 70 |miniscen|t of typ|
|00002ef0| 6f 67 72 61 70 68 69 63 | 61 6c 20 64 65 73 69 67 |ographic|al desig|
|00002f00| 6e 20 69 6e 20 31 39 38 | 32 3a 20 20 64 65 73 69 |n in 198|2: desi|
|00002f10| 67 6e 20 61 6e 64 20 65 | 78 65 63 75 74 69 6f 6e |gn and e|xecution|
|00002f20| 20 61 72 65 20 70 65 72 | 66 6f 72 6d 65 64 20 62 | are per|formed b|
|00002f30| 79 20 61 20 73 65 72 69 | 65 73 20 6f 66 20 73 70 |y a seri|es of sp|
|00002f40| 65 63 69 61 6c 69 73 74 | 73 2c 20 72 65 73 75 6c |ecialist|s, resul|
|00002f50| 74 69 6e 67 20 69 6e 20 | 61 6e 20 61 77 6b 77 61 |ting in |an awkwa|
|00002f60| 72 64 2c 20 6c 65 6e 67 | 74 68 79 20 61 6e 64 20 |rd, leng|thy and |
|00002f70| 65 78 70 65 6e 73 69 76 | 65 20 64 65 73 69 67 6e |expensiv|e design|
|00002f80| 2c 20 74 65 73 74 2c 20 | 61 6e 64 20 72 65 64 65 |, test, |and rede|
|00002f90| 73 69 67 6e 20 70 72 6f | 63 65 73 73 2e 0d 54 69 |sign pro|cess..Ti|
|00002fa0| 6d 65 2d 74 6f 2d 6d 61 | 72 6b 65 74 20 69 73 20 |me-to-ma|rket is |
|00002fb0| 63 6f 6e 73 69 73 74 65 | 6e 74 6c 79 20 72 61 74 |consiste|ntly rat|
|00002fc0| 65 64 20 76 65 72 79 20 | 68 69 67 68 20 69 6e 20 |ed very |high in |
|00002fd0| 6c 69 73 74 73 20 6f 66 | 20 66 61 63 74 6f 72 73 |lists of| factors|
|00002fe0| 20 61 66 66 65 63 74 69 | 6e 67 20 74 68 65 20 73 | affecti|ng the s|
|00002ff0| 75 63 63 65 73 73 20 6f | 66 20 68 69 67 68 20 74 |uccess o|f high t|
|00003000| 65 63 68 6e 6f 6c 6f 67 | 79 20 70 72 6f 64 75 63 |echnolog|y produc|
|00003010| 74 73 2e 20 20 54 68 65 | 20 65 6e 64 20 72 65 73 |ts. The| end res|
|00003020| 75 6c 74 20 6f 66 20 70 | 6f 6f 72 20 70 72 6f 67 |ult of p|oor prog|
|00003030| 72 61 6d 6d 69 6e 67 20 | 74 6f 6f 6c 73 20 69 73 |ramming |tools is|
|00003040| 20 65 69 74 68 65 72 20 | 70 6f 6f 72 20 74 69 6d | either |poor tim|
|00003050| 65 2d 74 6f 2d 6d 61 72 | 6b 65 74 20 6f 72 20 70 |e-to-mar|ket or p|
|00003060| 6f 6f 72 20 70 72 6f 67 | 72 61 6d 73 2e 20 20 53 |oor prog|rams. S|
|00003070| 6f 66 74 77 61 72 65 20 | 63 6f 6d 70 61 6e 69 65 |oftware |companie|
|00003080| 73 20 61 72 65 20 66 61 | 63 65 64 20 77 69 74 68 |s are fa|ced with|
|00003090| 20 61 20 64 69 6c 65 6d | 6d 61 3a 20 20 74 68 65 | a dilem|ma: the|
|000030a0| 79 20 63 61 6e 20 74 61 | 6b 65 20 79 65 61 72 73 |y can ta|ke years|
|000030b0| 2c 20 61 6e 64 20 64 6f | 20 74 68 65 20 6a 6f 62 |, and do| the job|
|000030c0| 20 72 69 67 68 74 2c 20 | 6f 72 20 74 68 65 79 20 | right, |or they |
|000030d0| 63 61 6e 20 63 75 74 20 | 63 6f 72 6e 65 72 73 20 |can cut |corners |
|000030e0| 61 6e 64 20 67 65 74 20 | 74 68 65 69 72 20 73 6f |and get |their so|
|000030f0| 66 74 77 61 72 65 20 69 | 6e 74 6f 20 74 68 65 20 |ftware i|nto the |
|00003100| 6d 61 72 6b 65 74 20 62 | 65 66 6f 72 65 20 74 68 |market b|efore th|
|00003110| 65 69 72 20 63 6f 6d 70 | 65 74 69 74 6f 72 73 2e |eir comp|etitors.|
|00003120| 20 20 4e 65 69 74 68 65 | 72 20 73 6f 6c 75 74 69 | Neithe|r soluti|
|00003130| 6f 6e 20 72 65 73 75 6c | 74 73 20 69 6e 20 61 20 |on resul|ts in a |
|00003140| 68 65 61 6c 74 68 79 20 | 73 6f 66 74 77 61 72 65 |healthy |software|
|00003150| 20 69 6e 64 75 73 74 72 | 79 2e 20 20 4e 65 69 74 | industr|y. Neit|
|00003160| 68 65 72 20 73 6f 6c 75 | 74 69 6f 6e 20 61 6c 6c |her solu|tion all|
|00003170| 6f 77 73 20 6f 75 72 20 | 70 72 6f 64 75 63 74 73 |ows our |products|
|00003180| 20 74 6f 20 6b 65 65 70 | 20 75 70 20 77 69 74 68 | to keep| up with|
|00003190| 20 6f 75 72 20 76 69 73 | 69 6f 6e 73 2e 0d 53 6f | our vis|ions..So|
|000031a0| 66 74 77 61 72 65 20 64 | 65 76 65 6c 6f 70 6d 65 |ftware d|evelopme|
|000031b0| 6e 74 20 74 6f 64 61 79 | 20 61 6c 73 6f 20 68 61 |nt today| also ha|
|000031c0| 73 20 61 20 6c 61 72 67 | 65 20 62 61 72 72 69 65 |s a larg|e barrie|
|000031d0| 72 20 74 6f 20 65 6e 74 | 72 79 2e 20 20 4f 6e 6c |r to ent|ry. Onl|
|000031e0| 79 20 63 6f 6d 70 61 6e | 69 65 73 20 77 69 74 68 |y compan|ies with|
|000031f0| 20 64 65 65 70 20 66 69 | 6e 61 6e 63 69 61 6c 20 | deep fi|nancial |
|00003200| 72 65 73 6f 75 72 63 65 | 73 20 63 61 6e 20 62 72 |resource|s can br|
|00003210| 69 6e 67 20 61 20 66 75 | 6c 6c 20 66 6c 65 64 67 |ing a fu|ll fledg|
|00003220| 65 64 20 61 70 70 6c 69 | 63 61 74 69 6f 6e 20 74 |ed appli|cation t|
|00003230| 6f 20 6d 61 72 6b 65 74 | 2e 20 20 54 68 65 20 72 |o market|. The r|
|00003240| 65 73 75 6c 74 20 69 73 | 20 61 20 6c 6f 73 73 20 |esult is| a loss |
|00003250| 6f 66 20 68 65 61 6c 74 | 68 79 20 63 6f 6d 70 65 |of healt|hy compe|
|00003260| 74 69 74 69 6f 6e 20 61 | 6e 64 20 66 72 65 73 68 |tition a|nd fresh|
|00003270| 20 69 64 65 61 73 20 69 | 6e 20 74 68 65 20 73 6f | ideas i|n the so|
|00003280| 66 74 77 61 72 65 20 66 | 69 65 6c 64 2e 0d 46 69 |ftware f|ield..Fi|
|00003290| 6e 61 6c 6c 79 2c 20 6f | 75 72 20 63 6f 6d 70 75 |nally, o|ur compu|
|000032a0| 74 69 6e 67 20 65 6e 67 | 69 6e 65 73 20 61 72 65 |ting eng|ines are|
|000032b0| 20 62 65 63 6f 6d 69 6e | 67 20 6d 6f 72 65 20 64 | becomin|g more d|
|000032c0| 69 76 65 72 73 65 2e 20 | 20 49 6e 20 61 64 64 69 |iverse. | In addi|
|000032d0| 74 69 6f 6e 20 74 6f 20 | 74 68 65 20 75 73 75 61 |tion to |the usua|
|000032e0| 6c 20 64 69 6d 65 6e 73 | 69 6f 6e 73 20 6f 66 20 |l dimens|ions of |
|000032f0| 73 70 65 65 64 2c 20 6d | 65 6d 6f 72 79 20 63 61 |speed, m|emory ca|
|00003300| 70 61 63 69 74 79 2c 20 | 73 63 72 65 65 6e 20 72 |pacity, |screen r|
|00003310| 65 73 6f 6c 75 74 69 6f | 6e 2c 20 69 6e 74 65 72 |esolutio|n, inter|
|00003320| 63 6f 6e 6e 65 63 74 65 | 64 6e 65 73 73 2c 20 70 |connecte|dness, p|
|00003330| 6f 77 65 72 20 63 6f 6e | 73 75 6d 70 74 69 6f 6e |ower con|sumption|
|00003340| 2c 20 61 6e 64 20 73 69 | 7a 65 2c 20 74 68 65 20 |, and si|ze, the |
|00003350| 75 6e 64 65 72 6c 79 69 | 6e 67 20 6f 70 65 72 61 |underlyi|ng opera|
|00003360| 74 69 6e 67 20 73 79 73 | 74 65 6d 73 20 61 6e 64 |ting sys|tems and|
|00003370| 20 74 6f 6f 6c 62 6f 78 | 65 73 20 61 72 65 20 62 | toolbox|es are b|
|00003380| 65 63 6f 6d 69 6e 67 20 | 62 72 6f 61 64 65 72 20 |ecoming |broader |
|00003390| 69 6e 20 73 63 6f 70 65 | 2e 20 20 53 70 65 63 69 |in scope|. Speci|
|000033a0| 66 69 63 20 69 6d 70 6c | 65 6d 65 6e 74 61 74 69 |fic impl|ementati|
|000033b0| 6f 6e 73 20 63 61 6e 20 | 61 6c 73 6f 20 62 65 63 |ons can |also bec|
|000033c0| 6f 6d 65 20 6d 6f 72 65 | 20 66 6f 63 75 73 65 64 |ome more| focused|
|000033d0| 2c 20 72 65 71 75 69 72 | 69 6e 67 20 61 20 68 69 |, requir|ing a hi|
|000033e0| 67 68 65 72 20 64 65 67 | 72 65 65 20 6f 66 20 74 |gher deg|ree of t|
|000033f0| 61 69 6c 6f 72 61 62 69 | 6c 69 74 79 2e 20 20 46 |ailorabi|lity. F|
|00003400| 6f 72 20 65 78 61 6d 70 | 6c 65 2c 20 20 77 69 74 |or examp|le, wit|
|00003410| 68 20 74 68 65 20 69 6e | 74 72 6f 64 75 63 74 69 |h the in|troducti|
|00003420| 6f 6e 20 6f 66 20 6d 6f | 62 69 6c 65 20 63 6f 6d |on of mo|bile com|
|00003430| 70 75 74 69 6e 67 2c 20 | 73 6f 66 74 77 61 72 65 |puting, |software|
|00003440| 20 72 65 71 75 69 72 65 | 6d 65 6e 74 73 20 6d 61 | require|ments ma|
|00003450| 79 20 63 68 61 6e 67 65 | 20 61 73 20 6c 6f 63 61 |y change| as loca|
|00003460| 74 69 6f 6e 73 20 63 68 | 61 6e 67 65 2e 20 20 53 |tions ch|ange. S|
|00003470| 6f 66 74 77 61 72 65 20 | 75 73 65 64 20 6f 6e 20 |oftware |used on |
|00003480| 6d 6f 62 69 6c 65 20 63 | 6f 6d 70 75 74 65 72 73 |mobile c|omputers|
|00003490| 20 6e 65 65 64 73 20 74 | 6f 20 62 65 20 61 62 6c | needs t|o be abl|
|000034a0| 65 20 74 6f 20 72 61 70 | 69 64 6c 79 20 72 65 73 |e to rap|idly res|
|000034b0| 70 6f 6e 64 20 74 6f 20 | 73 70 6f 6e 74 61 6e 65 |pond to |spontane|
|000034c0| 6f 75 73 6c 79 20 63 68 | 61 6e 67 69 6e 67 20 63 |ously ch|anging c|
|000034d0| 6f 6e 64 69 74 69 6f 6e | 73 20 69 6e 20 61 20 72 |ondition|s in a r|
|000034e0| 65 6c 69 61 62 6c 65 20 | 77 61 79 2e 0d 4f 62 6a |eliable |way..Obj|
|000034f0| 65 63 74 20 6f 72 69 65 | 6e 74 65 64 20 70 72 6f |ect orie|nted pro|
|00003500| 67 72 61 6d 6d 69 6e 67 | 20 74 61 6b 65 73 20 69 |gramming| takes i|
|00003510| 6d 70 6f 72 74 61 6e 74 | 20 73 74 65 70 73 20 74 |mportant| steps t|
|00003520| 6f 77 61 72 64 73 20 66 | 69 78 69 6e 67 20 74 68 |owards f|ixing th|
|00003530| 65 73 65 20 70 72 6f 62 | 6c 65 6d 73 2e 20 20 20 |ese prob|lems. |
|00003540| 42 79 20 6c 65 74 74 69 | 6e 67 20 70 72 6f 67 72 |By letti|ng progr|
|00003550| 61 6d 6d 65 72 73 20 73 | 74 72 75 63 74 75 72 65 |ammers s|tructure|
|00003560| 20 74 68 65 20 74 65 78 | 74 20 6f 66 20 74 68 65 | the tex|t of the|
|00003570| 69 72 20 70 72 6f 67 72 | 61 6d 73 20 69 6e 20 74 |ir progr|ams in t|
|00003580| 65 72 6d 73 20 6f 66 20 | 74 68 65 20 70 72 6f 62 |erms of |the prob|
|00003590| 6c 65 6d 20 61 74 20 68 | 61 6e 64 2c 20 6f 62 6a |lem at h|and, obj|
|000035a0| 65 63 74 20 6f 72 69 65 | 6e 74 65 64 20 70 72 6f |ect orie|nted pro|
|000035b0| 67 72 61 6d 6d 69 6e 67 | 20 6e 61 72 72 6f 77 73 |gramming| narrows|
|000035c0| 20 74 68 65 20 67 61 70 | 20 62 65 74 77 65 65 6e | the gap| between|
|000035d0| 20 63 6f 6e 63 65 70 74 | 69 6f 6e 20 61 6e 64 20 | concept|ion and |
|000035e0| 72 65 61 6c 69 7a 61 74 | 69 6f 6e 2e 20 20 48 6f |realizat|ion. Ho|
|000035f0| 77 65 76 65 72 2c 20 6f | 62 6a 65 63 74 20 6f 72 |wever, o|bject or|
|00003600| 69 65 6e 74 65 64 20 70 | 72 6f 67 72 61 6d 6d 69 |iented p|rogrammi|
|00003610| 6e 67 20 62 79 20 69 74 | 73 65 6c 66 20 69 73 20 |ng by it|self is |
|00003620| 69 6e 73 75 66 66 69 63 | 69 65 6e 74 2e 20 20 49 |insuffic|ient. I|
|00003630| 74 20 61 64 64 72 65 73 | 73 65 73 20 68 6f 77 20 |t addres|ses how |
|00003640| 70 72 6f 67 72 61 6d 73 | 20 61 72 65 20 64 65 73 |programs| are des|
|00003650| 63 72 69 62 65 64 2c 20 | 62 75 74 20 69 74 20 64 |cribed, |but it d|
|00003660| 6f 65 73 20 6e 6f 74 20 | 61 64 64 72 65 73 73 20 |oes not |address |
|00003670| 6d 61 6e 79 20 70 72 6f | 62 6c 65 6d 73 20 6f 66 |many pro|blems of|
|00003680| 20 74 68 65 20 64 61 79 | 2d 74 6f 2d 64 61 79 20 | the day|-to-day |
|00003690| 61 63 74 69 76 69 74 79 | 20 6f 66 20 70 72 6f 67 |activity| of prog|
|000036a0| 72 61 6d 6d 69 6e 67 2e | 20 20 49 74 20 64 6f 65 |ramming.| It doe|
|000036b0| 73 6e d5 74 20 63 68 61 | 6e 67 65 20 70 72 6f 67 |sn.t cha|nge prog|
|000036c0| 72 61 6d 6d 69 6e 67 d5 | 73 20 61 77 6b 77 61 72 |ramming.|s awkwar|
|000036d0| 64 20 77 6f 72 6b 20 66 | 6c 6f 77 2c 20 6e 6f 72 |d work f|low, nor|
|000036e0| 20 64 6f 65 73 20 69 74 | 20 6d 61 6b 65 20 61 6e | does it| make an|
|000036f0| 79 20 67 75 61 72 61 6e | 74 65 65 73 20 61 62 6f |y guaran|tees abo|
|00003700| 75 74 20 72 6f 62 75 73 | 74 6e 65 73 73 2c 20 6e |ut robus|tness, n|
|00003710| 6f 72 20 64 6f 65 73 20 | 69 74 20 72 65 6c 69 65 |or does |it relie|
|00003720| 76 65 20 74 68 65 20 70 | 72 6f 67 72 61 6d 6d 65 |ve the p|rogramme|
|00003730| 72 20 6f 66 20 6d 61 6e | 79 20 74 65 64 69 6f 75 |r of man|y tediou|
|00003740| 73 20 62 6f 6f 6b 6b 65 | 65 70 69 6e 67 20 74 61 |s bookke|eping ta|
|00003750| 73 6b 73 2c 20 74 61 73 | 6b 73 20 77 68 69 63 68 |sks, tas|ks which|
|00003760| 20 61 72 65 20 62 65 74 | 74 65 72 20 70 65 72 66 | are bet|ter perf|
|00003770| 6f 72 6d 65 64 20 62 79 | 20 61 20 63 6f 6d 70 75 |ormed by| a compu|
|00003780| 74 65 72 20 74 68 61 6e | 20 62 79 20 61 20 68 75 |ter than| by a hu|
|00003790| 6d 61 6e 2e 0d 54 6f 64 | 61 79 d5 73 20 6d 6f 73 |man..Tod|ay.s mos|
|000037a0| 74 20 70 6f 70 75 6c 61 | 72 20 6f 62 6a 65 63 74 |t popula|r object|
|000037b0| 20 6f 72 69 65 6e 74 65 | 64 20 6c 61 6e 67 75 61 | oriente|d langua|
|000037c0| 67 65 73 20 61 72 65 20 | 73 74 69 6c 6c 20 73 74 |ges are |still st|
|000037d0| 61 74 69 63 20 6c 61 6e | 67 75 61 67 65 73 2e 20 |atic lan|guages. |
|000037e0| 20 49 6e 20 73 75 63 68 | 20 6c 61 6e 67 75 61 67 | In such| languag|
|000037f0| 65 73 2c 20 6d 6f 73 74 | 20 6f 66 20 74 68 65 20 |es, most| of the |
|00003800| 69 6e 66 6f 72 6d 61 74 | 69 6f 6e 20 61 62 6f 75 |informat|ion abou|
|00003810| 74 20 6f 62 6a 65 63 74 | 73 20 69 73 20 64 69 73 |t object|s is dis|
|00003820| 63 61 72 64 65 64 20 64 | 75 72 69 6e 67 20 63 6f |carded d|uring co|
|00003830| 6d 70 69 6c 61 74 69 6f | 6e 2c 20 73 6f 20 70 72 |mpilatio|n, so pr|
|00003840| 6f 67 72 61 6d 73 20 63 | 61 6e 6e 6f 74 20 62 65 |ograms c|annot be|
|00003850| 20 6d 6f 64 69 66 69 65 | 64 20 77 69 74 68 6f 75 | modifie|d withou|
|00003860| 74 20 72 65 63 6f 6d 70 | 69 6c 61 74 69 6f 6e 2c |t recomp|ilation,|
|00003870| 20 61 6e 64 20 64 65 62 | 75 67 67 69 6e 67 20 69 | and deb|ugging i|
|00003880| 73 20 6d 6f 72 65 20 6c | 69 6b 65 6c 79 20 74 6f |s more l|ikely to|
|00003890| 20 6f 63 63 75 72 20 61 | 74 20 6d 61 63 68 69 6e | occur a|t machin|
|000038a0| 65 20 6c 65 76 65 6c 20 | 74 68 61 6e 20 74 68 65 |e level |than the|
|000038b0| 20 6c 65 76 65 6c 20 61 | 74 20 77 68 69 63 68 20 | level a|t which |
|000038c0| 74 68 65 20 70 72 6f 67 | 72 61 6d 20 77 61 73 20 |the prog|ram was |
|000038d0| 64 65 73 69 67 6e 65 64 | 2e 20 20 49 6e 20 61 64 |designed|. In ad|
|000038e0| 64 69 74 69 6f 6e 2c 20 | 74 68 65 73 65 20 6c 61 |dition, |these la|
|000038f0| 6e 67 75 61 67 65 73 20 | 65 6e 63 6f 75 72 61 67 |nguages |encourag|
|00003900| 65 20 6d 69 78 69 6e 67 | 20 6f 62 6a 65 63 74 73 |e mixing| objects|
|00003910| 20 77 69 74 68 20 6e 6f | 6e 2d 6f 62 6a 65 63 74 | with no|n-object|
|00003920| 20 6f 72 69 65 6e 74 65 | 64 20 62 69 74 73 20 61 | oriente|d bits a|
|00003930| 6e 64 20 62 79 74 65 73 | 2e 20 20 45 76 65 6e 20 |nd bytes|. Even |
|00003940| 6f 62 6a 65 63 74 73 20 | 63 61 6e 20 62 65 20 74 |objects |can be t|
|00003950| 72 65 61 74 65 64 20 61 | 73 20 75 6e 64 69 66 66 |reated a|s undiff|
|00003960| 65 72 65 6e 74 69 61 74 | 65 64 20 62 69 74 73 2c |erentiat|ed bits,|
|00003970| 20 6c 65 61 64 69 6e 67 | 20 74 6f 20 74 68 65 20 | leading| to the |
|00003980| 70 6f 73 73 69 62 69 6c | 69 74 79 20 6f 66 20 70 |possibil|ity of p|
|00003990| 72 6f 74 6f 63 6f 6c 20 | 76 69 6f 6c 61 74 69 6f |rotocol |violatio|
|000039a0| 6e 73 20 61 6e 64 20 6f | 62 73 63 75 72 65 20 65 |ns and o|bscure e|
|000039b0| 72 72 6f 72 73 2e 20 20 | 46 69 6e 61 6c 6c 79 2c |rrors. |Finally,|
|000039c0| 20 74 68 65 72 65 20 69 | 73 20 6e 6f 20 61 74 74 | there i|s no att|
|000039d0| 65 6d 70 74 20 74 6f 20 | 70 75 74 20 74 68 65 20 |empt to |put the |
|000039e0| 70 72 6f 63 65 73 73 20 | 6f 66 20 70 72 6f 67 72 |process |of progr|
|000039f0| 61 6d 6d 69 6e 67 20 69 | 6e 74 6f 20 74 68 65 20 |amming i|nto the |
|00003a00| 68 61 6e 64 73 20 6f 66 | 20 74 68 65 20 70 72 6f |hands of| the pro|
|00003a10| 67 72 61 6d 6d 65 72 2e | 20 20 47 65 6e 65 72 61 |grammer.| Genera|
|00003a20| 6c 6c 79 20 73 70 65 61 | 6b 69 6e 67 2c 20 6c 61 |lly spea|king, la|
|00003a30| 72 67 65 20 70 72 6f 67 | 72 61 6d 73 20 6d 75 73 |rge prog|rams mus|
|00003a40| 74 20 73 74 69 6c 6c 20 | 62 65 20 77 72 69 74 74 |t still |be writt|
|00003a50| 65 6e 20 69 6e 20 74 68 | 65 69 72 20 65 6e 74 69 |en in th|eir enti|
|00003a60| 72 65 74 79 20 62 65 66 | 6f 72 65 20 74 68 65 79 |rety bef|ore they|
|00003a70| 20 63 61 6e 20 62 65 20 | 63 6f 6d 70 69 6c 65 64 | can be |compiled|
|00003a80| 20 61 6e 64 20 74 65 73 | 74 65 64 2e 0d 53 74 61 | and tes|ted..Sta|
|00003a90| 74 69 63 20 6f 62 6a 65 | 63 74 20 6f 72 69 65 6e |tic obje|ct orien|
|00003aa0| 74 65 64 20 6c 61 6e 67 | 75 61 67 65 73 20 70 72 |ted lang|uages pr|
|00003ab0| 6f 76 69 64 65 20 6f 6e | 6c 79 20 68 61 6c 66 20 |ovide on|ly half |
|00003ac0| 6f 66 20 61 20 73 6f 6c | 75 74 69 6f 6e 2e 20 20 |of a sol|ution. |
|00003ad0| 54 68 65 20 6f 74 68 65 | 72 20 68 61 6c 66 20 69 |The othe|r half i|
|00003ae0| 73 20 70 72 6f 76 69 64 | 65 64 20 62 79 20 64 79 |s provid|ed by dy|
|00003af0| 6e 61 6d 69 73 6d 2c 20 | 79 69 65 6c 64 69 6e 67 |namism, |yielding|
|00003b00| 20 77 68 61 74 20 41 70 | 70 6c 65 20 63 61 6c 6c | what Ap|ple call|
|00003b10| 73 20 6f 62 6a 65 63 74 | 20 6f 72 69 65 6e 74 65 |s object| oriente|
|00003b20| 64 20 64 79 6e 61 6d 69 | 63 20 6c 61 6e 67 75 61 |d dynami|c langua|
|00003b30| 67 65 73 2c 20 6f 72 20 | 4f 4f 44 4c 73 2e 20 20 |ges, or |OODLs. |
|00003b40| 49 6e 20 61 64 64 69 74 | 69 6f 6e 20 74 6f 20 73 |In addit|ion to s|
|00003b50| 75 70 70 6f 72 74 69 6e | 67 20 74 68 65 20 6f 62 |upportin|g the ob|
|00003b60| 6a 65 63 74 20 6f 72 69 | 65 6e 74 65 64 20 6d 65 |ject ori|ented me|
|00003b70| 74 68 6f 64 6f 6c 6f 67 | 79 2c 20 4f 4f 44 4c 73 |thodolog|y, OODLs|
|00003b80| 20 6d 75 73 74 20 73 75 | 70 70 6f 72 74 20 61 20 | must su|pport a |
|00003b90| 6e 75 6d 62 65 72 20 6f | 66 20 66 65 61 74 75 72 |number o|f featur|
|00003ba0| 65 73 20 77 68 69 63 68 | 20 67 75 61 72 61 6e 74 |es which| guarant|
|00003bb0| 65 65 20 74 68 61 74 20 | 70 72 6f 67 72 61 6d 6d |ee that |programm|
|00003bc0| 69 6e 67 20 74 61 6b 65 | 73 20 70 6c 61 63 65 20 |ing take|s place |
|00003bd0| 69 6e 20 74 65 72 6d 73 | 20 64 65 66 69 6e 65 64 |in terms| defined|
|00003be0| 20 62 79 20 74 68 65 20 | 70 72 6f 67 72 61 6d 6d | by the |programm|
|00003bf0| 65 72 2c 20 72 61 74 68 | 65 72 20 74 68 61 6e 20 |er, rath|er than |
|00003c00| 69 6e 20 74 68 65 20 74 | 65 72 6d 73 20 6f 66 20 |in the t|erms of |
|00003c10| 74 68 65 20 68 61 72 64 | 77 61 72 65 2e 20 0d 4f |the hard|ware. .O|
|00003c20| 4f 44 4c 73 20 6d 75 73 | 74 20 73 75 70 70 6f 72 |ODLs mus|t suppor|
|00003c30| 74 20 72 61 70 69 64 20 | 63 72 65 61 74 69 6f 6e |t rapid |creation|
|00003c40| 2c 20 64 65 6c 69 76 65 | 72 79 2c 20 61 6e 64 20 |, delive|ry, and |
|00003c50| 73 75 62 73 65 71 75 65 | 6e 74 20 6d 6f 64 69 66 |subseque|nt modif|
|00003c60| 69 63 61 74 69 6f 6e 20 | 6f 66 20 61 6d 62 69 74 |ication |of ambit|
|00003c70| 69 6f 75 73 2c 20 72 65 | 6c 69 61 62 6c 65 2c 20 |ious, re|liable, |
|00003c80| 61 6e 64 20 65 66 66 69 | 63 69 65 6e 74 20 73 6f |and effi|cient so|
|00003c90| 66 74 77 61 72 65 2e 20 | 20 20 41 6d 6f 6e 67 20 |ftware. | Among |
|00003ca0| 74 68 65 20 73 70 65 63 | 69 66 69 63 20 72 65 71 |the spec|ific req|
|00003cb0| 75 69 72 65 6d 65 6e 74 | 73 20 20 61 6e 20 69 64 |uirement|s an id|
|00003cc0| 65 61 6c 20 4f 4f 44 4c | 20 73 68 6f 75 6c 64 20 |eal OODL| should |
|00003cd0| 73 61 74 69 73 66 79 20 | 61 72 65 20 74 68 65 20 |satisfy |are the |
|00003ce0| 66 6f 6c 6c 6f 77 69 6e | 67 3a 0d 41 75 74 6f 6d |followin|g:.Autom|
|00003cf0| 61 74 69 63 20 4d 65 6d | 6f 72 79 20 4d 61 6e 61 |atic Mem|ory Mana|
|00003d00| 67 65 6d 65 6e 74 0d 4d | 65 6d 6f 72 79 20 6d 61 |gement.M|emory ma|
|00003d10| 6e 61 67 65 6d 65 6e 74 | 20 62 75 67 73 20 61 72 |nagement| bugs ar|
|00003d20| 65 20 61 6d 6f 6e 67 20 | 74 68 65 20 6d 6f 73 74 |e among |the most|
|00003d30| 20 63 6f 6d 6d 6f 6e 20 | 61 6e 64 20 64 69 66 66 | common |and diff|
|00003d40| 69 63 75 6c 74 20 65 72 | 72 6f 72 73 20 69 6e 20 |icult er|rors in |
|00003d50| 73 74 61 74 69 63 20 70 | 72 6f 67 72 61 6d 6d 69 |static p|rogrammi|
|00003d60| 6e 67 20 6c 61 6e 67 75 | 61 67 65 73 2e 20 20 42 |ng langu|ages. B|
|00003d70| 75 67 73 20 69 6e 76 6f | 6c 76 69 6e 67 20 64 61 |ugs invo|lving da|
|00003d80| 6e 67 6c 69 6e 67 20 70 | 6f 69 6e 74 65 72 73 20 |ngling p|ointers |
|00003d90| 61 6e 64 20 74 77 69 63 | 65 2d 66 72 65 65 64 20 |and twic|e-freed |
|00003da0| 6f 62 6a 65 63 74 73 20 | 61 72 65 20 6e 6f 74 6f |objects |are noto|
|00003db0| 72 69 6f 75 73 6c 79 20 | 68 61 72 64 20 74 6f 20 |riously |hard to |
|00003dc0| 74 72 61 63 6b 20 64 6f | 77 6e 2e 0d 54 68 65 20 |track do|wn..The |
|00003dd0| 6c 61 6e 67 75 61 67 65 | 20 72 75 6e 2d 74 69 6d |language| run-tim|
|00003de0| 65 2c 20 61 6e 64 20 6e | 6f 74 20 74 68 65 20 70 |e, and n|ot the p|
|00003df0| 72 6f 67 72 61 6d 6d 65 | 72 2c 20 73 68 6f 75 6c |rogramme|r, shoul|
|00003e00| 64 20 62 65 20 72 65 73 | 70 6f 6e 73 69 62 6c 65 |d be res|ponsible|
|00003e10| 20 66 6f 72 20 61 6c 6c | 6f 63 61 74 69 6e 67 20 | for all|ocating |
|00003e20| 73 74 6f 72 61 67 65 20 | 66 6f 72 20 6f 62 6a 65 |storage |for obje|
|00003e30| 63 74 73 20 61 6e 64 20 | 72 65 63 6c 61 69 6d 69 |cts and |reclaimi|
|00003e40| 6e 67 20 74 68 65 20 73 | 74 6f 72 61 67 65 20 6f |ng the s|torage o|
|00003e50| 66 20 6f 62 6a 65 63 74 | 73 20 77 68 69 63 68 20 |f object|s which |
|00003e60| 61 72 65 20 6e 6f 20 6c | 6f 6e 67 65 72 20 75 73 |are no l|onger us|
|00003e70| 65 64 2e 20 54 68 65 72 | 65 20 73 68 6f 75 6c 64 |ed. Ther|e should|
|00003e80| 20 62 65 20 6e 6f 20 65 | 78 70 6c 69 63 69 74 20 | be no e|xplicit |
|00003e90| 70 72 6f 63 65 64 75 72 | 65 20 63 61 6c 6c 73 20 |procedur|e calls |
|00003ea0| 66 6f 72 20 61 6c 6c 6f | 63 61 74 69 6e 67 20 6f |for allo|cating o|
|00003eb0| 72 20 64 65 61 6c 6c 6f | 63 61 74 69 6e 67 20 6d |r deallo|cating m|
|00003ec0| 65 6d 6f 72 79 2c 20 6f | 72 20 66 6f 72 20 64 65 |emory, o|r for de|
|00003ed0| 61 6c 6c 6f 63 61 74 69 | 6e 67 20 6f 62 6a 65 63 |allocati|ng objec|
|00003ee0| 74 73 2e 20 0d 49 6e 20 | 61 20 77 65 6c 6c 20 65 |ts. .In |a well e|
|00003ef0| 6e 67 69 6e 65 65 72 65 | 64 20 69 6d 70 6c 65 6d |ngineere|d implem|
|00003f00| 65 6e 74 61 74 69 6f 6e | 2c 20 61 75 74 6f 6d 61 |entation|, automa|
|00003f10| 74 69 63 20 6d 65 6d 6f | 72 79 20 6d 61 6e 61 67 |tic memo|ry manag|
|00003f20| 65 6d 65 6e 74 20 73 68 | 6f 75 6c 64 20 62 65 20 |ement sh|ould be |
|00003f30| 72 6f 62 75 73 74 20 61 | 6e 64 20 73 63 61 6c 61 |robust a|nd scala|
|00003f40| 62 6c 65 2e 20 20 20 49 | 74 20 73 68 6f 75 6c 64 |ble. I|t should|
|00003f50| 20 6e 6f 74 20 63 72 65 | 61 74 65 20 6d 65 6d 6f | not cre|ate memo|
|00003f60| 72 79 20 66 72 61 67 6d | 65 6e 74 61 74 69 6f 6e |ry fragm|entation|
|00003f70| 2c 20 6f 72 20 66 61 69 | 6c 20 69 6e 20 74 68 65 |, or fai|l in the|
|00003f80| 20 70 72 65 73 65 6e 63 | 65 20 6f 66 20 6c 61 72 | presenc|e of lar|
|00003f90| 67 65 20 28 70 6f 73 73 | 69 62 6c 79 20 76 69 72 |ge (poss|ibly vir|
|00003fa0| 74 75 61 6c 29 20 61 64 | 64 72 65 73 73 20 73 70 |tual) ad|dress sp|
|00003fb0| 61 63 65 73 2e 20 20 49 | 74 20 73 68 6f 75 6c 64 |aces. I|t should|
|00003fc0| 20 6e 6f 74 20 63 61 75 | 73 65 20 73 65 65 6d 69 | not cau|se seemi|
|00003fd0| 6e 67 6c 79 20 61 72 62 | 69 74 72 61 72 79 20 61 |ngly arb|itrary a|
|00003fe0| 6e 64 20 75 6e 70 72 65 | 64 69 63 74 61 62 6c 65 |nd unpre|dictable|
|00003ff0| 20 64 65 6c 61 79 73 20 | 66 6f 72 20 65 6e 64 20 | delays |for end |
|00004000| 75 73 65 72 73 2e 0d 49 | 6e 20 61 20 74 72 75 65 |users..I|n a true|
|00004010| 20 4f 4f 44 4c 2c 20 74 | 68 65 72 65 20 73 68 6f | OODL, t|here sho|
|00004020| 75 6c 64 20 62 65 20 6e | 6f 20 6d 61 63 68 69 6e |uld be n|o machin|
|00004030| 65 2d 6c 65 76 65 6c 20 | 70 6f 69 6e 74 65 72 73 |e-level |pointers|
|00004040| 2c 20 6f 6e 6c 79 20 6f | 62 6a 65 63 74 73 2e 20 |, only o|bjects. |
|00004050| 20 4f 6e 63 65 20 66 72 | 65 65 64 20 66 72 6f 6d | Once fr|eed from|
|00004060| 20 64 65 61 6c 69 6e 67 | 20 77 69 74 68 20 70 6f | dealing| with po|
|00004070| 69 6e 74 65 72 73 2c 20 | 74 68 65 20 70 72 6f 67 |inters, |the prog|
|00004080| 72 61 6d 6d 65 72 20 63 | 61 6e 20 62 65 67 69 6e |rammer c|an begin|
|00004090| 20 74 6f 20 74 68 69 6e | 6b 20 6f 66 20 6f 62 6a | to thin|k of obj|
|000040a0| 65 63 74 73 20 61 74 20 | 61 20 68 69 67 68 65 72 |ects at |a higher|
|000040b0| 20 6c 65 76 65 6c 20 61 | 6e 64 20 74 68 65 20 70 | level a|nd the p|
|000040c0| 72 69 6d 69 74 69 76 65 | 73 20 62 65 63 6f 6d 65 |rimitive|s become|
|000040d0| 20 63 6f 6d 70 61 72 61 | 62 6c 79 20 72 69 63 68 | compara|bly rich|
|000040e0| 65 72 2e 20 20 46 6f 72 | 20 65 78 61 6d 70 6c 65 |er. For| example|
|000040f0| 2c 20 61 20 70 72 6f 67 | 72 61 6d 6d 65 72 20 77 |, a prog|rammer w|
|00004100| 6f 72 6b 69 6e 67 20 77 | 69 74 68 20 63 6f 6c 6c |orking w|ith coll|
|00004110| 65 63 74 69 6f 6e 73 20 | 6f 66 20 6f 62 6a 65 63 |ections |of objec|
|00004120| 74 73 20 64 6f 65 73 20 | 6e 6f 74 20 6e 65 65 64 |ts does |not need|
|00004130| 20 74 6f 20 77 6f 72 72 | 79 20 61 62 6f 75 74 20 | to worr|y about |
|00004140| 6d 65 6d 6f 72 79 20 6c | 65 61 6b 73 20 61 73 20 |memory l|eaks as |
|00004150| 63 6f 6c 6c 65 63 74 69 | 6f 6e 73 20 65 78 70 61 |collecti|ons expa|
|00004160| 6e 64 20 61 6e 64 20 63 | 6f 6e 74 72 61 63 74 2e |nd and c|ontract.|
|00004170| 20 20 54 68 65 20 70 72 | 6f 67 72 61 6d 6d 65 72 | The pr|ogrammer|
|00004180| 20 63 61 6e 20 63 6f 6e | 63 65 6e 74 72 61 74 65 | can con|centrate|
|00004190| 20 6f 6e 20 74 68 65 20 | 74 61 73 6b 20 61 74 20 | on the |task at |
|000041a0| 68 61 6e 64 2c 20 72 61 | 74 68 65 72 20 74 68 61 |hand, ra|ther tha|
|000041b0| 6e 20 6f 6e 20 74 68 65 | 20 62 6f 6f 6b 6b 65 65 |n on the| bookkee|
|000041c0| 70 69 6e 67 20 64 65 74 | 61 69 6c 73 2e 0d 4d 61 |ping det|ails..Ma|
|000041d0| 6e 79 20 6c 61 72 67 65 | 20 70 72 6f 67 72 61 6d |ny large| program|
|000041e0| 6d 69 6e 67 20 70 72 6f | 6a 65 63 74 73 20 62 65 |ming pro|jects be|
|000041f0| 67 69 6e 20 77 69 74 68 | 20 74 68 65 20 64 65 73 |gin with| the des|
|00004200| 69 67 6e 20 6f 66 20 61 | 20 6d 65 6d 6f 72 79 20 |ign of a| memory |
|00004210| 6d 61 6e 61 67 65 6d 65 | 6e 74 20 73 75 62 73 79 |manageme|nt subsy|
|00004220| 73 74 65 6d 2e 20 20 54 | 68 65 72 65 20 69 73 20 |stem. T|here is |
|00004230| 6e 6f 20 72 65 61 73 6f | 6e 20 74 68 61 74 20 74 |no reaso|n that t|
|00004240| 68 69 73 20 74 61 73 6b | 20 73 68 6f 75 6c 64 20 |his task| should |
|00004250| 6e 6f 74 20 62 65 20 70 | 65 72 66 6f 72 6d 65 64 |not be p|erformed|
|00004260| 20 6f 6e 63 65 2c 20 61 | 6e 64 20 74 68 65 20 63 | once, a|nd the c|
|00004270| 6f 72 72 65 73 70 6f 6e | 64 69 6e 67 20 69 6d 70 |orrespon|ding imp|
|00004280| 6c 65 6d 65 6e 74 61 74 | 69 6f 6e 20 6f 66 20 74 |lementat|ion of t|
|00004290| 68 61 74 20 64 65 73 69 | 67 6e 20 65 6d 62 6f 64 |hat desi|gn embod|
|000042a0| 69 65 64 20 69 6e 20 74 | 68 65 20 6c 61 6e 67 75 |ied in t|he langu|
|000042b0| 61 67 65 20 72 75 6e 2d | 74 69 6d 65 2c 20 61 6e |age run-|time, an|
|000042c0| 64 20 74 68 65 72 65 62 | 79 20 6d 61 64 65 20 61 |d thereb|y made a|
|000042d0| 76 61 69 6c 61 62 6c 65 | 20 74 6f 20 61 6c 6c 20 |vailable| to all |
|000042e0| 70 72 6f 67 72 61 6d 6d | 65 72 73 2e 0d 44 79 6e |programm|ers..Dyn|
|000042f0| 61 6d 69 63 20 4c 69 6e | 6b 69 6e 67 2f 20 49 6e |amic Lin|king/ In|
|00004300| 63 72 65 6d 65 6e 74 61 | 6c 20 44 65 76 65 6c 6f |crementa|l Develo|
|00004310| 70 6d 65 6e 74 0d 50 72 | 6f 67 72 61 6d 6d 65 72 |pment.Pr|ogrammer|
|00004320| 73 20 73 68 6f 75 6c 64 | 20 68 61 76 65 20 74 68 |s should| have th|
|00004330| 65 20 61 62 69 6c 69 74 | 79 20 74 6f 20 62 75 69 |e abilit|y to bui|
|00004340| 6c 64 20 75 70 20 74 68 | 65 69 72 20 70 72 6f 67 |ld up th|eir prog|
|00004350| 72 61 6d 73 20 70 69 65 | 63 65 20 62 79 20 70 69 |rams pie|ce by pi|
|00004360| 65 63 65 2c 20 69 6e 74 | 65 67 72 61 74 69 6e 67 |ece, int|egrating|
|00004370| 20 70 72 65 65 78 69 73 | 74 69 6e 67 20 70 69 65 | preexis|ting pie|
|00004380| 63 65 73 20 77 68 65 6e | 20 70 6f 73 73 69 62 6c |ces when| possibl|
|00004390| 65 20 61 6e 64 20 77 68 | 65 72 65 20 61 76 61 69 |e and wh|ere avai|
|000043a0| 6c 61 62 6c 65 2e 20 20 | 54 68 65 20 74 72 61 6e |lable. |The tran|
|000043b0| 73 69 74 69 6f 6e 20 62 | 65 74 77 65 65 6e 20 72 |sition b|etween r|
|000043c0| 61 70 69 64 20 70 72 6f | 74 6f 74 79 70 69 6e 67 |apid pro|totyping|
|000043d0| 20 61 6e 64 20 6d 61 69 | 6e 73 74 72 65 61 6d 20 | and mai|nstream |
|000043e0| 64 65 76 65 6c 6f 70 6d | 65 6e 74 20 73 68 6f 75 |developm|ent shou|
|000043f0| 6c 64 20 62 65 20 63 6f | 6e 74 69 6e 75 6f 75 73 |ld be co|ntinuous|
|00004400| 20 72 61 74 68 65 72 20 | 74 68 61 6e 20 64 69 73 | rather |than dis|
|00004410| 63 72 65 74 65 2e 20 20 | 20 49 74 20 73 68 6f 75 |crete. | It shou|
|00004420| 6c 64 20 6e 6f 74 20 72 | 65 71 75 69 72 65 20 63 |ld not r|equire c|
|00004430| 68 61 6e 67 69 6e 67 20 | 6c 61 6e 67 75 61 67 65 |hanging |language|
|00004440| 73 20 6f 72 20 74 6f 6f | 6c 73 2e 0d 54 68 69 73 |s or too|ls..This|
|00004450| 20 72 65 71 75 69 72 65 | 6d 65 6e 74 20 61 66 66 | require|ment aff|
|00004460| 65 63 74 73 20 74 68 65 | 20 70 72 6f 67 72 61 6d |ects the| program|
|00004470| 6d 69 6e 67 20 70 72 6f | 63 65 73 73 20 69 6e 20 |ming pro|cess in |
|00004480| 61 74 20 6c 65 61 73 74 | 20 66 6f 75 72 20 77 61 |at least| four wa|
|00004490| 79 73 3a 0d a5 09 44 75 | 72 69 6e 67 20 74 68 65 |ys:...Du|ring the|
|000044a0| 20 69 6e 69 74 69 61 6c | 20 63 6f 6e 73 74 72 75 | initial| constru|
|000044b0| 63 74 69 6f 6e 20 6f 66 | 20 61 20 70 72 6f 67 72 |ction of| a progr|
|000044c0| 61 6d 2c 20 63 6c 61 73 | 73 65 73 20 61 6e 64 20 |am, clas|ses and |
|000044d0| 66 75 6e 63 74 69 6f 6e | 73 20 63 61 6e 20 62 65 |function|s can be|
|000044e0| 20 63 6f 6d 70 69 6c 65 | 64 20 61 6e 64 20 74 65 | compile|d and te|
|000044f0| 73 74 65 64 20 69 6e 64 | 69 76 69 64 75 61 6c 6c |sted ind|ividuall|
|00004500| 79 2e 20 20 54 68 69 73 | 20 67 69 76 65 73 20 70 |y. This| gives p|
|00004510| 72 6f 67 72 61 6d 6d 65 | 72 73 20 74 68 65 20 66 |rogramme|rs the f|
|00004520| 72 65 65 64 6f 6d 20 74 | 6f 20 75 73 65 20 61 20 |reedom t|o use a |
|00004530| 62 6f 74 74 6f 6d 2d 75 | 70 20 70 72 6f 67 72 61 |bottom-u|p progra|
|00004540| 6d 6d 69 6e 67 20 73 74 | 79 6c 65 2c 20 69 66 20 |mming st|yle, if |
|00004550| 74 68 65 79 20 73 6f 20 | 63 68 6f 6f 73 65 2c 20 |they so |choose, |
|00004560| 6f 62 76 69 61 74 69 6e | 67 20 74 68 65 20 6e 65 |obviatin|g the ne|
|00004570| 65 64 20 66 6f 72 20 74 | 68 65 20 63 6f 6e 73 74 |ed for t|he const|
|00004580| 72 75 63 74 69 6f 6e 20 | 6f 66 20 61 20 63 6f 6d |ruction |of a com|
|00004590| 70 6c 65 78 20 73 75 70 | 65 72 73 74 72 75 63 74 |plex sup|erstruct|
|000045a0| 75 72 65 20 66 6f 72 20 | 69 6e 69 74 69 61 6c 20 |ure for |initial |
|000045b0| 74 65 73 74 69 6e 67 2e | 0d a5 09 44 75 72 69 6e |testing.|...Durin|
|000045c0| 67 20 64 65 62 75 67 67 | 69 6e 67 2c 20 69 6e 64 |g debugg|ing, ind|
|000045d0| 69 76 69 64 75 61 6c 20 | 66 75 6e 63 74 69 6f 6e |ividual |function|
|000045e0| 73 20 61 6e 64 20 63 6c | 61 73 73 65 73 20 63 61 |s and cl|asses ca|
|000045f0| 6e 20 62 65 20 72 65 64 | 65 66 69 6e 65 64 20 77 |n be red|efined w|
|00004600| 69 74 68 6f 75 74 20 72 | 65 73 6f 72 74 69 6e 67 |ithout r|esorting|
|00004610| 20 74 6f 20 61 20 66 75 | 6c 6c 20 72 65 63 6f 6d | to a fu|ll recom|
|00004620| 70 69 6c 61 74 69 6f 6e | 20 6f 66 20 74 68 65 20 |pilation| of the |
|00004630| 70 72 6f 67 72 61 6d 20 | 61 6e 64 20 70 65 72 68 |program |and perh|
|00004640| 61 70 73 20 77 69 74 68 | 6f 75 74 20 65 76 65 6e |aps with|out even|
|00004650| 20 68 61 6c 74 69 6e 67 | 20 74 68 65 20 65 78 65 | halting| the exe|
|00004660| 63 75 74 69 6f 6e 20 6f | 66 20 74 68 65 20 70 72 |cution o|f the pr|
|00004670| 6f 67 72 61 6d 2e 20 20 | 0d a5 09 50 72 6f 67 72 |ogram. |...Progr|
|00004680| 61 6d 73 20 63 61 6e 20 | 62 65 20 64 65 6c 69 76 |ams can |be deliv|
|00004690| 65 72 65 64 20 69 6e 20 | 63 6f 6d 70 6f 6e 65 6e |ered in |componen|
|000046a0| 74 73 2c 20 77 68 69 63 | 68 20 63 61 6e 20 62 65 |ts, whic|h can be|
|000046b0| 20 6c 69 6e 6b 65 64 20 | 74 6f 67 65 74 68 65 72 | linked |together|
|000046c0| 20 6f 6e 20 65 69 74 68 | 65 72 20 74 68 65 20 64 | on eith|er the d|
|000046d0| 65 76 65 6c 6f 70 6d 65 | 6e 74 20 6d 61 63 68 69 |evelopme|nt machi|
|000046e0| 6e 65 20 6f 72 20 74 68 | 65 20 65 6e 64 2d 75 73 |ne or th|e end-us|
|000046f0| 65 72 20 6d 61 63 68 69 | 6e 65 2c 20 75 73 69 6e |er machi|ne, usin|
|00004700| 67 20 62 75 69 6c 74 2d | 69 6e 20 6c 61 6e 67 75 |g built-|in langu|
|00004710| 61 67 65 20 66 65 61 74 | 75 72 65 73 2e 0d a5 09 |age feat|ures....|
|00004720| 50 72 6f 67 72 61 6d 20 | 70 61 74 63 68 65 73 20 |Program |patches |
|00004730| 28 69 2e 65 2e 2c 20 66 | 69 65 6c 64 20 75 70 67 |(i.e., f|ield upg|
|00004740| 72 61 64 65 73 29 20 63 | 61 6e 20 62 65 20 64 69 |rades) c|an be di|
|00004750| 73 74 72 69 62 75 74 65 | 64 20 74 6f 20 65 6e 64 |stribute|d to end|
|00004760| 2d 75 73 65 72 73 20 75 | 73 69 6e 67 20 62 75 69 |-users u|sing bui|
|00004770| 6c 74 2d 69 6e 20 6c 61 | 6e 67 75 61 67 65 20 66 |lt-in la|nguage f|
|00004780| 65 61 74 75 72 65 73 2e | 20 20 20 41 70 70 6c 79 |eatures.| Apply|
|00004790| 69 6e 67 20 74 68 65 20 | 70 61 74 63 68 20 73 68 |ing the |patch sh|
|000047a0| 6f 75 6c 64 20 62 65 20 | 61 20 76 65 72 79 20 6c |ould be |a very l|
|000047b0| 6f 77 20 6f 76 65 72 68 | 65 61 64 20 6f 70 65 72 |ow overh|ead oper|
|000047c0| 61 74 69 6f 6e 2e 20 20 | 54 68 65 72 65 20 73 68 |ation. |There sh|
|000047d0| 6f 75 6c 64 20 62 65 20 | 76 69 72 74 75 61 6c 6c |ould be |virtuall|
|000047e0| 79 20 6e 6f 20 70 65 72 | 66 6f 72 6d 61 6e 63 65 |y no per|formance|
|000047f0| 20 70 65 6e 61 6c 74 79 | 20 66 6f 72 20 65 78 65 | penalty| for exe|
|00004800| 63 75 74 69 6e 67 20 70 | 61 74 63 68 65 64 20 63 |cuting p|atched c|
|00004810| 6f 64 65 2e 20 20 42 65 | 63 61 75 73 65 20 79 6f |ode. Be|cause yo|
|00004820| 75 20 64 6f 6e d5 74 20 | 6e 65 65 64 20 73 6f 75 |u don.t |need sou|
|00004830| 72 63 65 20 63 6f 64 65 | 20 66 6f 72 20 74 68 65 |rce code| for the|
|00004840| 20 6f 72 69 67 69 6e 61 | 6c 20 61 70 70 6c 69 63 | origina|l applic|
|00004850| 61 74 69 6f 6e 20 69 6e | 20 6f 72 64 65 72 20 74 |ation in| order t|
|00004860| 6f 20 61 70 70 6c 79 20 | 74 68 65 20 70 61 74 63 |o apply |the patc|
|00004870| 68 2c 20 74 72 61 64 69 | 74 69 6f 6e 61 6c 20 69 |h, tradi|tional i|
|00004880| 6e 74 65 6c 6c 65 63 74 | 75 61 6c 20 70 72 6f 70 |ntellect|ual prop|
|00004890| 65 72 74 79 20 20 69 73 | 73 75 65 73 20 61 72 69 |erty is|sues ari|
|000048a0| 73 69 6e 67 20 66 72 6f | 6d 20 70 72 6f 70 61 67 |sing fro|m propag|
|000048b0| 61 74 69 6e 67 20 73 6f | 75 72 63 65 20 63 6f 64 |ating so|urce cod|
|000048c0| 65 20 73 69 6d 70 6c 79 | 20 6e 65 65 64 20 6e 6f |e simply| need no|
|000048d0| 74 20 61 72 69 73 65 2e | 0d 53 65 6c 66 20 49 64 |t arise.|.Self Id|
|000048e0| 65 6e 74 69 66 79 69 6e | 67 20 4f 62 6a 65 63 74 |entifyin|g Object|
|000048f0| 73 20 2f 20 49 6e 74 72 | 6f 73 70 65 63 74 69 6f |s / Intr|ospectio|
|00004900| 6e 0d 4f 70 65 72 61 74 | 69 6f 6e 73 20 73 68 6f |n.Operat|ions sho|
|00004910| 75 6c 64 20 62 65 20 63 | 68 65 63 6b 65 64 20 66 |uld be c|hecked f|
|00004920| 6f 72 20 74 79 70 65 20 | 73 61 66 65 74 79 20 62 |or type |safety b|
|00004930| 65 66 6f 72 65 20 74 68 | 65 79 20 61 72 65 20 70 |efore th|ey are p|
|00004940| 65 72 66 6f 72 6d 65 64 | 2e 20 20 49 66 20 70 6f |erformed|. If po|
|00004950| 73 73 69 62 6c 65 2c 20 | 74 68 69 73 20 63 68 65 |ssible, |this che|
|00004960| 63 6b 20 73 68 6f 75 6c | 64 20 62 65 20 70 65 72 |ck shoul|d be per|
|00004970| 66 6f 72 6d 65 64 20 61 | 74 20 63 6f 6d 70 69 6c |formed a|t compil|
|00004980| 65 2d 74 69 6d 65 2c 20 | 6f 74 68 65 72 77 69 73 |e-time, |otherwis|
|00004990| 65 20 69 74 20 73 68 6f | 75 6c 64 20 62 65 20 70 |e it sho|uld be p|
|000049a0| 65 72 66 6f 72 6d 65 64 | 20 61 74 20 72 75 6e 2d |erformed| at run-|
|000049b0| 74 69 6d 65 2e 20 20 54 | 68 69 73 20 66 65 61 74 |time. T|his feat|
|000049c0| 75 72 65 20 67 75 61 72 | 61 6e 74 65 65 73 20 74 |ure guar|antees t|
|000049d0| 68 61 74 20 74 79 70 65 | 20 65 72 72 6f 72 73 20 |hat type| errors |
|000049e0| 61 72 65 20 6e 6f 74 69 | 63 65 64 20 61 73 20 73 |are noti|ced as s|
|000049f0| 6f 6f 6e 20 61 73 20 74 | 68 65 79 20 6f 63 63 75 |oon as t|hey occu|
|00004a00| 72 2c 20 62 65 66 6f 72 | 65 20 74 68 65 79 20 63 |r, befor|e they c|
|00004a10| 61 6e 20 70 72 6f 70 61 | 67 61 74 65 20 61 6e 64 |an propa|gate and|
|00004a20| 20 63 61 75 73 65 20 73 | 79 73 74 65 6d 20 63 6f | cause s|ystem co|
|00004a30| 72 72 75 70 74 69 6f 6e | 2e 20 20 42 65 63 61 75 |rruption|. Becau|
|00004a40| 73 65 20 74 68 65 20 69 | 6e 74 65 67 72 69 74 79 |se the i|ntegrity|
|00004a50| 20 6f 66 20 74 68 65 20 | 6f 62 6a 65 63 74 20 6d | of the |object m|
|00004a60| 6f 64 65 6c 20 69 73 20 | 6d 61 69 6e 74 61 69 6e |odel is |maintain|
|00004a70| 65 64 2c 20 65 72 72 6f | 72 20 72 65 70 6f 72 74 |ed, erro|r report|
|00004a80| 69 6e 67 20 63 61 6e 20 | 6f 63 63 75 72 20 69 6e |ing can |occur in|
|00004a90| 20 74 65 72 6d 73 20 6f | 66 20 70 72 6f 67 72 61 | terms o|f progra|
|00004aa0| 6d 6d 65 72 20 6f 62 6a | 65 63 74 73 20 61 6e 64 |mmer obj|ects and|
|00004ab0| 20 65 6e 64 2d 75 73 65 | 72 20 6f 62 6a 65 63 74 | end-use|r object|
|00004ac0| 73 2c 20 72 61 74 68 65 | 72 20 74 68 61 6e 20 69 |s, rathe|r than i|
|00004ad0| 6e 20 6d 61 63 68 69 6e | 65 2d 6c 65 76 65 6c 20 |n machin|e-level |
|00004ae0| 74 65 72 6d 73 2e 20 20 | 49 6e 20 6d 61 6e 79 20 |terms. |In many |
|00004af0| 63 61 73 65 73 2c 20 63 | 6f 6d 70 6c 65 74 65 20 |cases, c|omplete |
|00004b00| 65 72 72 6f 72 20 72 65 | 63 6f 76 65 72 79 20 69 |error re|covery i|
|00004b10| 73 20 70 6f 73 73 69 62 | 6c 65 2e 0d 54 68 65 20 |s possib|le..The |
|00004b20| 6c 61 6e 67 75 61 67 65 | 20 73 68 6f 75 6c 64 20 |language| should |
|00004b30| 63 6f 6e 74 61 69 6e 20 | 66 65 61 74 75 72 65 73 |contain |features|
|00004b40| 20 66 6f 72 20 69 6e 74 | 72 6f 73 70 65 63 74 69 | for int|rospecti|
|00004b50| 6f 6e 2e 20 20 54 68 69 | 73 20 6d 65 61 6e 73 20 |on. Thi|s means |
|00004b60| 74 68 61 74 20 74 68 65 | 20 6c 61 6e 67 75 61 67 |that the| languag|
|00004b70| 65 20 72 75 6e 2d 74 69 | 6d 65 20 73 68 6f 75 6c |e run-ti|me shoul|
|00004b80| 64 20 68 61 76 65 20 73 | 75 66 66 69 63 69 65 6e |d have s|ufficien|
|00004b90| 74 20 70 6f 77 65 72 20 | 74 6f 20 61 6e 73 77 65 |t power |to answe|
|00004ba0| 72 20 71 75 65 73 74 69 | 6f 6e 73 20 61 62 6f 75 |r questi|ons abou|
|00004bb0| 74 20 69 74 73 65 6c 66 | 20 61 6e 64 20 74 68 65 |t itself| and the|
|00004bc0| 20 6f 62 6a 65 63 74 73 | 20 69 74 20 6d 61 6e 61 | objects| it mana|
|00004bd0| 67 65 73 2e 20 20 46 6f | 72 20 65 78 61 6d 70 6c |ges. Fo|r exampl|
|00004be0| 65 2c 20 69 74 20 73 68 | 6f 75 6c 64 20 62 65 20 |e, it sh|ould be |
|00004bf0| 70 6f 73 73 69 62 6c 65 | 20 61 74 20 65 78 65 63 |possible| at exec|
|00004c00| 75 74 69 6f 6e 20 74 69 | 6d 65 20 74 6f 20 61 6e |ution ti|me to an|
|00004c10| 61 6c 79 7a 65 20 74 68 | 65 20 73 74 72 75 63 74 |alyze th|e struct|
|00004c20| 75 72 65 20 6f 66 20 61 | 6e 20 6f 62 6a 65 63 74 |ure of a|n object|
|00004c30| 2c 20 66 69 6e 64 20 74 | 68 65 20 73 75 62 63 6c |, find t|he subcl|
|00004c40| 61 73 73 65 73 20 6f 66 | 20 61 20 63 6c 61 73 73 |asses of| a class|
|00004c50| 2c 20 65 74 63 2e 0d 54 | 6f 20 66 61 63 69 6c 69 |, etc..T|o facili|
|00004c60| 74 61 74 65 20 74 79 70 | 65 2d 73 61 66 65 74 79 |tate typ|e-safety|
|00004c70| 20 61 6e 64 20 69 6e 74 | 72 6f 73 70 65 63 74 69 | and int|rospecti|
|00004c80| 6f 6e 2c 20 6f 62 6a 65 | 63 74 73 20 61 72 65 20 |on, obje|cts are |
|00004c90| 73 65 6c 66 2d 69 64 65 | 6e 74 69 66 79 69 6e 67 |self-ide|ntifying|
|00004ca0| 20 69 6e 20 6d 65 6d 6f | 72 79 2e 20 20 55 6e 6c | in memo|ry. Unl|
|00004cb0| 65 73 73 20 61 6c 6c 20 | 75 73 65 73 20 6f 66 20 |ess all |uses of |
|00004cc0| 61 6e 20 6f 62 6a 65 63 | 74 20 63 61 6e 20 62 65 |an objec|t can be|
|00004cd0| 20 61 6e 61 6c 79 7a 65 | 64 20 61 74 20 63 6f 6d | analyze|d at com|
|00004ce0| 70 69 6c 65 2d 74 69 6d | 65 2c 20 74 68 65 20 72 |pile-tim|e, the r|
|00004cf0| 75 6e 2d 74 69 6d 65 20 | 6d 65 6d 6f 72 79 20 66 |un-time |memory f|
|00004d00| 6f 72 20 74 68 65 20 6f | 62 6a 65 63 74 20 73 68 |or the o|bject sh|
|00004d10| 6f 75 6c 64 20 63 6f 6e | 74 61 69 6e 20 65 6e 6f |ould con|tain eno|
|00004d20| 75 67 68 20 69 6e 66 6f | 72 6d 61 74 69 6f 6e 20 |ugh info|rmation |
|00004d30| 74 6f 20 69 64 65 6e 74 | 69 66 79 20 69 74 73 20 |to ident|ify its |
|00004d40| 63 6c 61 73 73 20 61 6e | 64 20 76 61 6c 75 65 2e |class an|d value.|
|00004d50| 0d 4f 62 6a 65 63 74 20 | 4f 72 69 65 6e 74 65 64 |.Object |Oriented|
|00004d60| 20 50 72 6f 67 72 61 6d | 6d 69 6e 67 20 45 6e 76 | Program|ming Env|
|00004d70| 69 72 6f 6e 6d 65 6e 74 | 0d 54 68 65 20 70 72 6f |ironment|.The pro|
|00004d80| 67 72 61 6d 6d 69 6e 67 | 20 65 6e 76 69 72 6f 6e |gramming| environ|
|00004d90| 6d 65 6e 74 20 73 68 6f | 75 6c 64 20 70 72 65 73 |ment sho|uld pres|
|00004da0| 65 6e 74 20 61 6c 6c 20 | 64 65 62 75 67 67 69 6e |ent all |debuggin|
|00004db0| 67 20 69 6e 66 6f 72 6d | 61 74 69 6f 6e 20 61 74 |g inform|ation at|
|00004dc0| 20 61 6e 20 6f 62 6a 65 | 63 74 20 6f 72 69 65 6e | an obje|ct orien|
|00004dd0| 74 65 64 20 6c 65 76 65 | 6c 2e 20 20 45 72 72 6f |ted leve|l. Erro|
|00004de0| 72 73 20 73 68 6f 75 6c | 64 20 62 65 20 64 65 73 |rs shoul|d be des|
|00004df0| 63 72 69 62 65 64 20 69 | 6e 20 68 69 67 68 2d 6c |cribed i|n high-l|
|00004e00| 65 76 65 6c 20 74 65 72 | 6d 73 20 73 69 6d 69 6c |evel ter|ms simil|
|00004e10| 61 72 20 74 6f 20 74 68 | 6f 73 65 20 75 73 65 64 |ar to th|ose used|
|00004e20| 20 62 79 20 74 68 65 20 | 70 72 6f 67 72 61 6d 6d | by the |programm|
|00004e30| 65 72 20 69 6e 20 63 6f | 6e 73 74 72 75 63 74 69 |er in co|nstructi|
|00004e40| 6e 67 20 74 68 65 20 70 | 72 6f 67 72 61 6d 2e 20 |ng the p|rogram. |
|00004e50| 20 49 6e 73 70 65 63 74 | 69 6f 6e 20 66 61 63 69 | Inspect|ion faci|
|00004e60| 6c 69 74 69 65 73 20 73 | 68 6f 75 6c 64 20 73 68 |lities s|hould sh|
|00004e70| 6f 77 20 61 20 70 72 6f | 67 72 61 6d 20 61 73 20 |ow a pro|gram as |
|00004e80| 61 20 63 6f 6c 6c 65 63 | 74 69 6f 6e 20 6f 66 20 |a collec|tion of |
|00004e90| 6f 62 6a 65 63 74 73 2c | 20 6e 6f 74 20 61 73 20 |objects,| not as |
|00004ea0| 61 20 6d 61 73 73 20 6f | 66 20 75 6e 64 69 66 66 |a mass o|f undiff|
|00004eb0| 65 72 65 6e 74 69 61 74 | 65 64 20 62 69 74 73 2e |erentiat|ed bits.|
|00004ec0| 20 20 54 68 65 72 65 20 | 73 68 6f 75 6c 64 20 62 | There |should b|
|00004ed0| 65 20 74 6f 6f 6c 73 20 | 66 6f 72 20 70 65 72 66 |e tools |for perf|
|00004ee0| 6f 72 6d 61 6e 63 65 20 | 61 6e 61 6c 79 73 69 73 |ormance |analysis|
|00004ef0| 20 61 6e 64 20 6d 6f 6e | 69 74 6f 72 69 6e 67 20 | and mon|itoring |
|00004f00| 6f 66 20 73 69 6e 67 6c | 65 20 6f 62 6a 65 63 74 |of singl|e object|
|00004f10| 73 20 61 73 20 77 65 6c | 6c 20 61 73 20 63 6f 6c |s as wel|l as col|
|00004f20| 6c 65 63 74 69 6f 6e 73 | 20 6f 66 20 6f 62 6a 65 |lections| of obje|
|00004f30| 63 74 73 2e 0d 54 68 65 | 72 65 20 73 68 6f 75 6c |cts..The|re shoul|
|00004f40| 64 20 62 65 20 72 69 63 | 68 20 6c 69 62 72 61 72 |d be ric|h librar|
|00004f50| 69 65 73 20 6f 66 20 63 | 6f 6d 70 6f 6e 65 6e 74 |ies of c|omponent|
|00004f60| 73 2c 20 61 6e 64 20 74 | 68 65 20 6d 65 61 6e 73 |s, and t|he means|
|00004f70| 20 74 6f 20 6e 61 76 69 | 67 61 74 65 20 77 69 74 | to navi|gate wit|
|00004f80| 68 69 6e 20 61 6e 64 20 | 62 65 74 77 65 65 6e 20 |hin and |between |
|00004f90| 74 68 65 6d 20 61 6e 64 | 20 74 6f 20 6f 72 67 61 |them and| to orga|
|00004fa0| 6e 69 7a 65 20 61 6e 64 | 20 61 64 6d 69 6e 69 73 |nize and| adminis|
|00004fb0| 74 65 72 20 74 68 65 6d | 2e 0d 54 68 65 72 65 20 |ter them|..There |
|00004fc0| 73 68 6f 75 6c 64 20 62 | 65 20 61 20 77 65 6c 6c |should b|e a well|
|00004fd0| 20 74 68 6f 75 67 68 74 | 20 6f 75 74 20 64 69 73 | thought| out dis|
|00004fe0| 74 69 6e 63 74 69 6f 6e | 20 62 65 74 77 65 65 6e |tinction| between|
|00004ff0| 20 64 65 76 65 6c 6f 70 | 6d 65 6e 74 20 65 6e 76 | develop|ment env|
|00005000| 69 72 6f 6e 6d 65 6e 74 | 20 61 6e 64 20 65 78 65 |ironment| and exe|
|00005010| 63 75 74 69 6f 6e 20 65 | 6e 76 69 72 6f 6e 6d 65 |cution e|nvironme|
|00005020| 6e 74 2c 20 61 6e 64 20 | 77 68 65 72 65 20 74 68 |nt, and |where th|
|00005030| 65 79 20 61 72 65 20 64 | 69 66 66 65 72 65 6e 74 |ey are d|ifferent|
|00005040| 2c 20 74 68 65 20 64 65 | 76 65 6c 6f 70 6d 65 6e |, the de|velopmen|
|00005050| 74 20 65 6e 76 69 72 6f | 6e 6d 65 6e 74 20 73 68 |t enviro|nment sh|
|00005060| 6f 75 6c 64 20 6d 61 6e | 61 67 65 20 74 68 65 20 |ould man|age the |
|00005070| 63 6f 6d 6d 75 6e 69 63 | 61 74 69 6f 6e 20 62 65 |communic|ation be|
|00005080| 74 77 65 65 6e 20 74 68 | 65 6d 20 69 6e 20 61 73 |tween th|em in as|
|00005090| 20 74 72 61 6e 73 70 61 | 72 65 6e 74 20 61 20 6d | transpa|rent a m|
|000050a0| 61 6e 6e 65 72 20 61 73 | 20 70 6f 73 73 69 62 6c |anner as| possibl|
|000050b0| 65 2e 20 20 54 68 69 73 | 20 66 65 61 74 75 72 65 |e. This| feature|
|000050c0| 20 69 73 20 6d 69 73 73 | 69 6e 67 20 66 72 6f 6d | is miss|ing from|
|000050d0| 20 63 75 72 72 65 6e 74 | 20 4f 4f 44 4c 73 2c 20 | current| OODLs, |
|000050e0| 62 75 74 20 69 74 20 69 | 73 20 65 73 73 65 6e 74 |but it i|s essent|
|000050f0| 69 61 6c 20 66 6f 72 20 | 74 68 65 20 64 65 6c 69 |ial for |the deli|
|00005100| 76 65 72 79 20 6f 66 20 | 4f 4f 44 4c 2d 62 61 73 |very of |OODL-bas|
|00005110| 65 64 20 61 70 70 6c 69 | 63 61 74 69 6f 6e 73 20 |ed appli|cations |
|00005120| 74 6f 20 65 6e 64 2d 75 | 73 65 72 73 2e 0d 41 6e |to end-u|sers..An|
|00005130| 20 69 6d 70 6f 72 74 61 | 6e 74 20 61 73 70 65 63 | importa|nt aspec|
|00005140| 74 20 6f 66 20 74 68 65 | 73 65 20 66 65 61 74 75 |t of the|se featu|
|00005150| 72 65 73 20 69 73 20 74 | 68 61 74 20 74 68 65 79 |res is t|hat they|
|00005160| 20 61 72 65 20 6d 75 74 | 75 61 6c 6c 79 20 73 75 | are mut|ually su|
|00005170| 70 70 6f 72 74 69 6e 67 | 2c 20 66 6f 72 6d 69 6e |pporting|, formin|
|00005180| 67 20 61 6e 20 6f 72 67 | 61 6e 69 63 20 77 68 6f |g an org|anic who|
|00005190| 6c 65 2e 20 20 54 68 65 | 20 73 69 6d 70 6c 65 73 |le. The| simples|
|000051a0| 74 20 69 6d 70 6c 65 6d | 65 6e 74 61 74 69 6f 6e |t implem|entation|
|000051b0| 20 6f 66 20 65 61 63 68 | 20 64 65 70 65 6e 64 73 | of each| depends|
|000051c0| 20 6f 6e 20 74 68 65 20 | 65 78 69 73 74 65 6e 63 | on the |existenc|
|000051d0| 65 20 6f 66 20 74 68 65 | 20 6f 74 68 65 72 73 2e |e of the| others.|
|000051e0| 20 20 46 6f 72 20 65 78 | 61 6d 70 6c 65 2c 20 61 | For ex|ample, a|
|000051f0| 75 74 6f 6d 61 74 69 63 | 20 6d 65 6d 6f 72 79 20 |utomatic| memory |
|00005200| 6d 61 6e 61 67 65 6d 65 | 6e 74 20 72 65 6c 69 65 |manageme|nt relie|
|00005210| 73 20 6f 6e 20 74 68 65 | 20 61 62 69 6c 69 74 79 |s on the| ability|
|00005220| 20 74 6f 20 77 61 6c 6b | 20 6d 65 6d 6f 72 79 20 | to walk| memory |
|00005230| 61 6e 64 20 69 64 65 6e | 74 69 66 79 20 6f 62 6a |and iden|tify obj|
|00005240| 65 63 74 73 2e 20 20 41 | 6e 6f 74 68 65 72 20 65 |ects. A|nother e|
|00005250| 78 61 6d 70 6c 65 20 69 | 73 20 74 68 61 74 20 72 |xample i|s that r|
|00005260| 61 70 69 64 20 70 72 6f | 74 6f 74 79 70 69 6e 67 |apid pro|totyping|
|00005270| 20 72 65 71 75 69 72 65 | 73 20 72 61 70 69 64 20 | require|s rapid |
|00005280| 6d 6f 64 69 66 69 63 61 | 74 69 6f 6e 20 6f 66 20 |modifica|tion of |
|00005290| 74 68 65 20 70 72 6f 67 | 72 61 6d 2c 20 61 6e 64 |the prog|ram, and|
|000052a0| 20 73 6f 20 69 6e 63 72 | 65 6d 65 6e 74 61 6c 20 | so incr|emental |
|000052b0| 64 79 6e 61 6d 69 63 20 | 6c 69 6e 6b 69 6e 67 20 |dynamic |linking |
|000052c0| 62 65 63 6f 6d 65 73 20 | 65 73 73 65 6e 74 69 61 |becomes |essentia|
|000052d0| 6c 2e 20 20 49 6e 63 72 | 65 6d 65 6e 74 61 6c 20 |l. Incr|emental |
|000052e0| 64 79 6e 61 6d 69 63 20 | 72 65 6c 69 6e 6b 69 6e |dynamic |relinkin|
|000052f0| 67 20 75 74 69 6c 69 7a | 65 73 20 61 75 74 6f 6d |g utiliz|es autom|
|00005300| 61 74 69 63 20 72 65 63 | 6c 61 6d 61 74 69 6f 6e |atic rec|lamation|
|00005310| 20 6f 66 20 73 74 6f 72 | 61 67 65 20 6f 63 63 75 | of stor|age occu|
|00005320| 70 69 65 64 20 62 79 20 | 74 68 65 20 66 75 6e 63 |pied by |the func|
|00005330| 74 69 6f 6e 73 2c 20 6d | 65 74 68 6f 64 73 2c 20 |tions, m|ethods, |
|00005340| 61 6e 64 20 64 61 74 61 | 20 62 65 69 6e 67 20 72 |and data| being r|
|00005350| 65 70 6c 61 63 65 64 2e | 0d 4d 61 6e 79 20 70 65 |eplaced.|.Many pe|
|00005360| 6f 70 6c 65 20 69 6e 20 | 63 6f 6d 6d 65 72 63 69 |ople in |commerci|
|00005370| 61 6c 20 69 6e 64 75 73 | 74 72 79 20 61 6e 64 20 |al indus|try and |
|00005380| 69 6e 20 74 68 65 20 72 | 65 73 65 61 72 63 68 20 |in the r|esearch |
|00005390| 63 6f 6d 6d 75 6e 69 74 | 79 20 68 61 76 65 20 72 |communit|y have r|
|000053a0| 65 63 6f 67 6e 69 7a 65 | 64 20 74 68 65 20 70 72 |ecognize|d the pr|
|000053b0| 6f 62 6c 65 6d 73 20 77 | 69 74 68 20 73 74 61 74 |oblems w|ith stat|
|000053c0| 69 63 20 6c 61 6e 67 75 | 61 67 65 73 2c 20 61 6e |ic langu|ages, an|
|000053d0| 64 20 73 6f 6d 65 20 68 | 61 76 65 20 73 74 61 72 |d some h|ave star|
|000053e0| 74 65 64 20 74 6f 20 62 | 75 69 6c 64 20 70 72 6f |ted to b|uild pro|
|000053f0| 64 75 63 74 73 20 74 68 | 61 74 20 70 72 6f 76 69 |ducts th|at provi|
|00005400| 64 65 20 73 6f 6d 65 20 | 6f 66 20 74 68 65 20 66 |de some |of the f|
|00005410| 65 61 74 75 72 65 73 20 | 6f 66 20 4f 4f 44 4c 73 |eatures |of OODLs|
|00005420| 2e 20 20 46 6f 72 20 65 | 78 61 6d 70 6c 65 2c 20 |. For e|xample, |
|00005430| 69 6e 74 65 72 61 63 74 | 69 76 65 20 70 72 6f 67 |interact|ive prog|
|00005440| 72 61 6d 6d 69 6e 67 20 | 65 6e 76 69 72 6f 6e 6d |ramming |environm|
|00005450| 65 6e 74 73 20 66 6f 72 | 20 73 74 61 74 69 63 20 |ents for| static |
|00005460| 6c 61 6e 67 75 61 67 65 | 73 20 61 72 65 20 62 65 |language|s are be|
|00005470| 67 69 6e 6e 69 6e 67 20 | 74 6f 20 61 70 70 65 61 |ginning |to appea|
|00005480| 72 2e 20 20 57 65 20 61 | 70 70 6c 61 75 64 20 74 |r. We a|pplaud t|
|00005490| 68 69 73 20 64 65 76 65 | 6c 6f 70 6d 65 6e 74 2e |his deve|lopment.|
|000054a0| 20 20 48 6f 77 65 76 65 | 72 2c 20 77 65 20 62 65 | Howeve|r, we be|
|000054b0| 6c 69 65 76 65 20 74 68 | 61 74 20 73 74 61 72 74 |lieve th|at start|
|000054c0| 69 6e 67 20 77 69 74 68 | 20 61 20 73 74 61 74 69 |ing with| a stati|
|000054d0| 63 20 6c 61 6e 67 75 61 | 67 65 20 72 65 71 75 69 |c langua|ge requi|
|000054e0| 72 65 73 20 74 6f 6f 20 | 6d 61 6e 79 20 63 6f 6d |res too |many com|
|000054f0| 70 72 6f 6d 69 73 65 73 | 2e 20 20 49 66 20 65 61 |promises|. If ea|
|00005500| 63 68 20 4f 4f 44 4c 20 | 66 65 61 74 75 72 65 20 |ch OODL |feature |
|00005510| 77 65 72 65 20 74 6f 20 | 62 65 20 61 64 64 65 64 |were to |be added|
|00005520| 20 69 6e 20 69 73 6f 6c | 61 74 69 6f 6e 2c 20 74 | in isol|ation, t|
|00005530| 68 65 20 6d 75 74 75 61 | 6c 6c 79 20 73 75 70 70 |he mutua|lly supp|
|00005540| 6f 72 74 69 6e 67 20 63 | 68 61 72 61 63 74 65 72 |orting c|haracter|
|00005550| 69 73 74 69 63 73 20 77 | 6f 75 6c 64 20 62 65 20 |istics w|ould be |
|00005560| 6c 6f 73 74 2c 20 63 72 | 65 61 74 69 6e 67 20 72 |lost, cr|eating r|
|00005570| 65 64 75 6e 64 61 6e 63 | 79 2c 20 63 6f 6e 66 6c |edundanc|y, confl|
|00005580| 69 63 74 73 2c 20 61 6e | 64 20 69 6e 65 66 66 69 |icts, an|d ineffi|
|00005590| 63 69 65 6e 63 79 2e 20 | 20 57 68 65 6e 20 69 6e |ciency. | When in|
|000055a0| 73 74 65 61 64 20 74 68 | 65 73 65 20 66 65 61 74 |stead th|ese feat|
|000055b0| 75 72 65 73 20 61 72 65 | 20 62 75 69 6c 74 20 74 |ures are| built t|
|000055c0| 6f 67 65 74 68 65 72 20 | 69 6e 74 6f 20 74 68 65 |ogether |into the|
|000055d0| 20 63 6f 72 65 20 6f 66 | 20 61 20 70 72 6f 67 72 | core of| a progr|
|000055e0| 61 6d 6d 69 6e 67 20 73 | 79 73 74 65 6d 2c 20 74 |amming s|ystem, t|
|000055f0| 68 65 79 20 70 72 6f 76 | 69 64 65 20 61 20 73 69 |hey prov|ide a si|
|00005600| 6d 70 6c 65 20 61 6e 64 | 20 73 65 63 75 72 65 20 |mple and| secure |
|00005610| 66 6f 75 6e 64 61 74 69 | 6f 6e 20 66 6f 72 20 67 |foundati|on for g|
|00005620| 72 6f 77 74 68 2e 20 20 | 0d 54 68 65 20 63 6f 6d |rowth. |.The com|
|00005630| 6d 6f 6e 20 63 72 69 74 | 69 63 69 73 6d 20 6f 66 |mon crit|icism of|
|00005640| 20 4f 4f 44 4c 73 20 69 | 73 20 74 68 61 74 20 77 | OODLs i|s that w|
|00005650| 65 20 63 61 6e 6e 6f 74 | 20 61 66 66 6f 72 64 20 |e cannot| afford |
|00005660| 74 68 65 6d 2e 20 20 4d | 6f 73 74 20 70 72 6f 67 |them. M|ost prog|
|00005670| 72 61 6d 6d 65 72 73 20 | 76 69 65 77 20 4f 4f 44 |rammers |view OOD|
|00005680| 4c 73 20 61 73 20 73 6c | 6f 77 20 61 6e 64 20 61 |Ls as sl|ow and a|
|00005690| 73 20 6d 65 6d 6f 72 79 | 20 68 6f 67 73 2e 20 20 |s memory| hogs. |
|000056a0| 54 68 65 20 63 6f 6d 6d | 6f 6e 20 77 69 73 64 6f |The comm|on wisdo|
|000056b0| 6d 20 69 73 20 74 68 61 | 74 20 4f 4f 44 4c 73 20 |m is tha|t OODLs |
|000056c0| 64 6f 20 6e 6f 74 20 6d | 61 6b 65 20 67 6f 6f 64 |do not m|ake good|
|000056d0| 20 75 73 65 20 6f 66 20 | 6d 61 63 68 69 6e 65 20 | use of |machine |
|000056e0| 72 65 73 6f 75 72 63 65 | 73 2e 20 20 46 6f 72 74 |resource|s. Fort|
|000056f0| 75 6e 61 74 65 6c 79 2c | 20 74 68 69 73 20 76 69 |unately,| this vi|
|00005700| 65 77 20 69 73 20 6f 75 | 74 20 6f 66 20 64 61 74 |ew is ou|t of dat|
|00005710| 65 2e 20 20 54 68 65 20 | 63 6f 6d 62 69 6e 61 74 |e. The |combinat|
|00005720| 69 6f 6e 20 6f 66 20 69 | 6d 70 72 6f 76 65 64 20 |ion of i|mproved |
|00005730| 4f 4f 44 4c 20 69 6d 70 | 6c 65 6d 65 6e 74 61 74 |OODL imp|lementat|
|00005740| 69 6f 6e 20 74 65 63 68 | 6e 6f 6c 6f 67 79 20 61 |ion tech|nology a|
|00005750| 6e 64 20 69 6e 63 72 65 | 61 73 69 6e 67 6c 79 20 |nd incre|asingly |
|00005760| 70 6f 77 65 72 66 75 6c | 20 68 61 72 64 77 61 72 |powerful| hardwar|
|00005770| 65 20 6d 61 6b 65 20 4f | 4f 44 4c 73 20 65 6d 69 |e make O|ODLs emi|
|00005780| 6e 65 6e 74 6c 79 20 70 | 72 61 63 74 69 63 61 6c |nently p|ractical|
|00005790| 2e 20 20 45 76 65 72 79 | 20 79 65 61 72 20 6f 72 |. Every| year or|
|000057a0| 20 74 77 6f 20 6f 75 72 | 20 68 61 72 64 77 61 72 | two our| hardwar|
|000057b0| 65 20 67 65 74 73 20 74 | 77 69 63 65 20 61 73 20 |e gets t|wice as |
|000057c0| 66 61 73 74 20 61 6e 64 | 20 68 61 73 20 74 77 69 |fast and| has twi|
|000057d0| 63 65 20 61 73 20 6d 75 | 63 68 20 6d 65 6d 6f 72 |ce as mu|ch memor|
|000057e0| 79 2e 20 20 57 6f 75 6c | 64 20 61 6e 79 6f 6e 65 |y. Woul|d anyone|
|000057f0| 20 73 61 79 20 74 68 61 | 74 20 74 68 65 20 71 75 | say tha|t the qu|
|00005800| 61 6c 69 74 79 20 6f 66 | 20 6f 75 72 20 73 6f 66 |ality of| our sof|
|00005810| 74 77 61 72 65 20 68 61 | 73 20 69 6e 63 72 65 61 |tware ha|s increa|
|00005820| 73 65 64 20 61 74 20 74 | 68 65 20 73 61 6d 65 20 |sed at t|he same |
|00005830| 72 61 74 65 3f 20 20 50 | 72 6f 67 72 61 6d 6d 69 |rate? P|rogrammi|
|00005840| 6e 67 20 6d 75 73 74 20 | 62 65 20 6d 61 64 65 20 |ng must |be made |
|00005850| 65 61 73 69 65 72 2c 20 | 6f 72 20 74 68 65 20 66 |easier, |or the f|
|00005860| 61 73 74 65 73 74 20 68 | 61 72 64 77 61 72 65 20 |astest h|ardware |
|00005870| 69 6e 20 74 68 65 20 77 | 6f 72 6c 64 20 77 69 6c |in the w|orld wil|
|00005880| 6c 20 6f 6e 6c 79 20 67 | 69 76 65 20 75 73 20 69 |l only g|ive us i|
|00005890| 6e 63 72 65 6d 65 6e 74 | 61 6c 20 73 6f 66 74 77 |ncrement|al softw|
|000058a0| 61 72 65 20 69 6d 70 72 | 6f 76 65 6d 65 6e 74 73 |are impr|ovements|
|000058b0| 2e 20 20 42 79 20 69 6e | 76 65 73 74 69 6e 67 20 |. By in|vesting |
|000058c0| 61 20 66 65 77 20 63 79 | 63 6c 65 73 20 77 65 20 |a few cy|cles we |
|000058d0| 63 61 6e 20 65 6e 61 62 | 6c 65 20 61 20 6e 65 77 |can enab|le a new|
|000058e0| 20 67 65 6e 65 72 61 74 | 69 6f 6e 20 6f 66 20 61 | generat|ion of a|
|000058f0| 70 70 6c 69 63 61 74 69 | 6f 6e 73 2e 0d 57 68 65 |pplicati|ons..Whe|
|00005900| 6e 20 4d 61 63 69 6e 74 | 6f 73 68 20 77 61 73 20 |n Macint|osh was |
|00005910| 66 69 72 73 74 20 72 65 | 6c 65 61 73 65 64 2c 20 |first re|leased, |
|00005920| 6d 61 6e 79 20 70 65 6f | 70 6c 65 20 74 68 6f 75 |many peo|ple thou|
|00005930| 67 68 74 20 74 68 61 74 | 20 77 69 6e 64 6f 77 73 |ght that| windows|
|00005940| 2c 20 6d 65 6e 75 73 2c | 20 61 6e 64 20 61 20 62 |, menus,| and a b|
|00005950| 69 74 20 6d 61 70 70 65 | 64 20 64 69 73 70 6c 61 |it mappe|d displa|
|00005960| 79 20 77 65 72 65 20 61 | 20 77 61 73 74 65 20 6f |y were a| waste o|
|00005970| 66 20 6d 61 63 68 69 6e | 65 20 72 65 73 6f 75 72 |f machin|e resour|
|00005980| 63 65 73 2e 20 20 57 65 | 20 73 65 65 20 69 6e 20 |ces. We| see in |
|00005990| 72 65 74 72 6f 73 70 65 | 63 74 20 74 68 61 74 20 |retrospe|ct that |
|000059a0| 74 68 69 73 20 77 61 73 | 20 6e 6f 74 20 74 72 75 |this was| not tru|
|000059b0| 65 2e 20 20 57 68 61 74 | 20 67 6f 6f 64 20 69 73 |e. What| good is|
|000059c0| 20 74 68 65 20 70 6f 77 | 65 72 20 6f 66 20 61 20 | the pow|er of a |
|000059d0| 63 6f 6d 70 75 74 65 72 | 2c 20 69 66 20 69 74 20 |computer|, if it |
|000059e0| 63 61 6e d5 74 20 62 65 | 20 61 63 63 65 73 73 65 |can.t be| accesse|
|000059f0| 64 20 62 79 20 61 20 75 | 73 65 72 3f 0d 54 68 69 |d by a u|ser?.Thi|
|00005a00| 73 20 62 6f 6f 6b 20 64 | 65 73 63 72 69 62 65 73 |s book d|escribes|
|00005a10| 20 44 79 6c 61 6e aa 2c | 20 61 20 6e 65 77 20 6f | Dylan.,| a new o|
|00005a20| 62 6a 65 63 74 20 6f 72 | 69 65 6e 74 65 64 20 64 |bject or|iented d|
|00005a30| 79 6e 61 6d 69 63 20 6c | 61 6e 67 75 61 67 65 20 |ynamic l|anguage |
|00005a40| 64 65 73 69 67 6e 65 64 | 20 62 79 20 41 70 70 6c |designed| by Appl|
|00005a50| 65 2e 20 20 44 79 6c 61 | 6e 20 69 73 20 6f 75 72 |e. Dyla|n is our|
|00005a60| 20 61 74 74 65 6d 70 74 | 20 61 74 20 61 20 6c 61 | attempt| at a la|
|00005a70| 6e 67 75 61 67 65 20 77 | 68 69 63 68 20 69 73 20 |nguage w|hich is |
|00005a80| 73 69 6d 70 6c 65 2c 20 | 79 65 74 20 70 6f 77 65 |simple, |yet powe|
|00005a90| 72 66 75 6c 2c 20 6f 6e | 65 20 77 68 69 63 68 20 |rful, on|e which |
|00005aa0| 6b 65 65 70 73 20 70 72 | 6f 67 72 61 6d 6d 69 6e |keeps pr|ogrammin|
|00005ab0| 67 20 61 74 20 61 20 68 | 69 67 68 20 6c 65 76 65 |g at a h|igh leve|
|00005ac0| 6c 20 62 75 74 20 77 68 | 69 63 68 20 63 61 6e 20 |l but wh|ich can |
|00005ad0| 62 65 20 63 6f 6d 70 69 | 6c 65 64 20 65 66 66 69 |be compi|led effi|
|00005ae0| 63 69 65 6e 74 6c 79 20 | 61 6e 64 20 68 61 73 20 |ciently |and has |
|00005af0| 61 20 72 65 6c 61 74 69 | 76 65 6c 79 20 6d 6f 64 |a relati|vely mod|
|00005b00| 65 73 74 20 6d 65 6d 6f | 72 79 20 66 6f 6f 74 70 |est memo|ry footp|
|00005b10| 72 69 6e 74 2e 0d 41 70 | 70 6c 65 20 61 6c 72 65 |rint..Ap|ple alre|
|00005b20| 61 64 79 20 68 61 73 20 | 6f 6e 65 20 4f 4f 44 4c |ady has |one OODL|
|00005b30| 20 70 72 6f 64 75 63 74 | 3a 20 4d 61 63 69 6e 74 | product|: Macint|
|00005b40| 6f 73 68 20 43 6f 6d 6d | 6f 6e 20 4c 69 73 70 2e |osh Comm|on Lisp.|
|00005b50| 20 20 44 79 6c 61 6e 20 | 69 73 20 69 6e 74 65 6e | Dylan |is inten|
|00005b60| 64 65 64 20 74 6f 20 63 | 6f 6d 70 6c 65 6d 65 6e |ded to c|omplemen|
|00005b70| 74 20 43 6f 6d 6d 6f 6e | 20 4c 69 73 70 2c 20 6e |t Common| Lisp, n|
|00005b80| 6f 74 20 74 6f 20 72 65 | 70 6c 61 63 65 20 69 74 |ot to re|place it|
|00005b90| 2e 20 20 43 6f 6d 6d 6f | 6e 20 4c 69 73 70 20 69 |. Commo|n Lisp i|
|00005ba0| 73 20 61 20 72 69 63 68 | 20 65 6e 76 69 72 6f 6e |s a rich| environ|
|00005bb0| 6d 65 6e 74 20 64 65 66 | 69 6e 65 64 20 62 79 20 |ment def|ined by |
|00005bc0| 61 20 73 74 61 6e 64 61 | 72 64 20 61 6e 64 20 61 |a standa|rd and a|
|00005bd0| 76 61 69 6c 61 62 6c 65 | 20 69 6e 20 63 6f 6d 70 |vailable| in comp|
|00005be0| 61 74 69 62 6c 65 20 69 | 6d 70 6c 65 6d 65 6e 74 |atible i|mplement|
|00005bf0| 61 74 69 6f 6e 73 20 6f | 6e 20 61 20 62 72 6f 61 |ations o|n a broa|
|00005c00| 64 20 72 61 6e 67 65 20 | 6f 66 20 70 6c 61 74 66 |d range |of platf|
|00005c10| 6f 72 6d 73 2e 20 20 44 | 79 6c 61 6e 20 69 73 20 |orms. D|ylan is |
|00005c20| 6c 65 61 6e 20 61 6e 64 | 20 73 74 72 69 70 70 65 |lean and| strippe|
|00005c30| 64 20 64 6f 77 6e 20 74 | 6f 20 61 20 6d 69 6e 69 |d down t|o a mini|
|00005c40| 6d 75 6d 20 66 65 61 74 | 75 72 65 20 73 65 74 2e |mum feat|ure set.|
|00005c50| 20 20 41 74 20 70 72 65 | 73 65 6e 74 20 44 79 6c | At pre|sent Dyl|
|00005c60| 61 6e 20 69 73 20 6e 6f | 74 20 61 76 61 69 6c 61 |an is no|t availa|
|00005c70| 62 6c 65 20 6f 6e 20 61 | 6e 79 20 70 6c 61 74 66 |ble on a|ny platf|
|00005c80| 6f 72 6d 20 28 6f 75 74 | 73 69 64 65 20 41 70 70 |orm (out|side App|
|00005c90| 6c 65 29 2c 20 62 75 74 | 20 69 73 20 69 6e 74 65 |le), but| is inte|
|00005ca0| 6e 64 65 64 20 74 6f 20 | 72 75 6e 20 6f 6e 20 61 |nded to |run on a|
|00005cb0| 20 77 69 64 65 20 76 61 | 72 69 65 74 79 20 6f 66 | wide va|riety of|
|00005cc0| 20 6d 61 63 68 69 6e 65 | 73 2c 20 69 6e 63 6c 75 | machine|s, inclu|
|00005cd0| 64 69 6e 67 20 76 65 72 | 79 20 73 6d 61 6c 6c 20 |ding ver|y small |
|00005ce0| 6d 61 63 68 69 6e 65 73 | 20 74 68 61 74 20 64 6f |machines| that do|
|00005cf0| 6e d5 74 20 68 61 76 65 | 20 74 68 65 20 68 6f 72 |n.t have| the hor|
|00005d00| 73 65 70 6f 77 65 72 20 | 74 6f 20 73 75 70 70 6f |sepower |to suppo|
|00005d10| 72 74 20 61 20 6d 6f 64 | 65 72 6e 20 43 6f 6d 6d |rt a mod|ern Comm|
|00005d20| 6f 6e 20 4c 69 73 70 2e | 20 20 43 6f 6d 6d 6f 6e |on Lisp.| Common|
|00005d30| 20 4c 69 73 70 20 69 73 | 20 61 69 6d 65 64 20 70 | Lisp is| aimed p|
|00005d40| 72 69 6d 61 72 69 6c 79 | 20 61 74 20 74 68 65 20 |rimarily| at the |
|00005d50| 4c 69 73 70 20 63 6f 6d | 6d 75 6e 69 74 79 2c 20 |Lisp com|munity, |
|00005d60| 77 68 69 6c 65 20 44 79 | 6c 61 6e 20 69 73 20 61 |while Dy|lan is a|
|00005d70| 63 63 65 73 73 69 62 6c | 65 20 74 6f 20 61 70 70 |ccessibl|e to app|
|00005d80| 6c 69 63 61 74 69 6f 6e | 20 64 65 76 65 6c 6f 70 |lication| develop|
|00005d90| 65 72 73 20 75 6e 66 61 | 6d 69 6c 69 61 72 20 77 |ers unfa|miliar w|
|00005da0| 69 74 68 20 4c 69 73 70 | 2e 20 20 43 6f 6d 6d 6f |ith Lisp|. Commo|
|00005db0| 6e 20 4c 69 73 70 20 69 | 73 20 6f 72 69 65 6e 74 |n Lisp i|s orient|
|00005dc0| 65 64 20 6d 6f 72 65 20 | 74 6f 77 61 72 64 73 20 |ed more |towards |
|00005dd0| 65 78 70 6c 6f 72 61 74 | 6f 72 79 20 70 72 6f 67 |explorat|ory prog|
|00005de0| 72 61 6d 6d 69 6e 67 20 | 77 69 74 68 20 64 65 6c |ramming |with del|
|00005df0| 69 76 65 72 79 20 63 61 | 70 61 62 69 6c 69 74 79 |ivery ca|pability|
|00005e00| 2c 20 77 68 69 6c 65 20 | 44 79 6c 61 6e 20 69 73 |, while |Dylan is|
|00005e10| 20 6f 72 69 65 6e 74 65 | 64 20 6d 6f 72 65 20 74 | oriente|d more t|
|00005e20| 6f 77 61 72 64 73 20 64 | 65 6c 69 76 65 72 79 20 |owards d|elivery |
|00005e30| 77 69 74 68 20 65 78 70 | 6c 6f 72 61 74 6f 72 79 |with exp|loratory|
|00005e40| 20 63 61 70 61 62 69 6c | 69 74 79 2e 20 0d 49 6e | capabil|ity. .In|
|00005e50| 20 6f 75 72 20 72 65 73 | 65 61 72 63 68 20 61 6e | our res|earch an|
|00005e60| 64 20 64 65 76 65 6c 6f | 70 6d 65 6e 74 20 6c 61 |d develo|pment la|
|00005e70| 62 73 2c 20 41 70 70 6c | 65 20 68 61 73 20 69 74 |bs, Appl|e has it|
|00005e80| 73 20 6f 77 6e 20 69 6d | 70 6c 65 6d 65 6e 74 61 |s own im|plementa|
|00005e90| 74 69 6f 6e 73 20 6f 66 | 20 44 79 6c 61 6e 2c 20 |tions of| Dylan, |
|00005ea0| 77 68 69 63 68 20 61 72 | 65 20 62 65 69 6e 67 20 |which ar|e being |
|00005eb0| 70 72 6f 64 75 63 65 64 | 20 68 61 6e 64 20 69 6e |produced| hand in|
|00005ec0| 20 67 6c 6f 76 65 20 77 | 69 74 68 20 74 68 65 20 | glove w|ith the |
|00005ed0| 6c 61 6e 67 75 61 67 65 | 20 64 65 66 69 6e 69 74 |language| definit|
|00005ee0| 69 6f 6e 20 61 73 20 61 | 20 64 65 73 69 67 6e 20 |ion as a| design |
|00005ef0| 61 73 73 75 72 61 6e 63 | 65 20 6d 65 61 73 75 72 |assuranc|e measur|
|00005f00| 65 2e 20 20 57 65 20 77 | 6f 75 6c 64 20 6c 69 6b |e. We w|ould lik|
|00005f10| 65 20 74 6f 20 73 65 65 | 20 6f 74 68 65 72 73 20 |e to see| others |
|00005f20| 63 72 65 61 74 65 20 61 | 64 64 69 74 69 6f 6e 61 |create a|dditiona|
|00005f30| 6c 20 69 6d 70 6c 65 6d | 65 6e 74 61 74 69 6f 6e |l implem|entation|
|00005f40| 73 2e 20 20 57 65 20 77 | 6f 75 6c 64 20 62 65 20 |s. We w|ould be |
|00005f50| 70 61 72 74 69 63 75 6c | 61 72 6c 79 20 69 6e 74 |particul|arly int|
|00005f60| 65 72 65 73 74 65 64 20 | 69 6e 20 77 6f 72 6b 69 |erested |in worki|
|00005f70| 6e 67 20 77 69 74 68 20 | 61 20 67 72 6f 75 70 20 |ng with |a group |
|00005f80| 74 6f 20 63 72 65 61 74 | 65 20 61 20 72 65 66 65 |to creat|e a refe|
|00005f90| 72 65 6e 63 65 20 69 6d | 70 6c 65 6d 65 6e 74 61 |rence im|plementa|
|00005fa0| 74 69 6f 6e 20 6f 70 74 | 69 6d 69 7a 65 64 20 66 |tion opt|imized f|
|00005fb0| 6f 72 20 70 6f 72 74 61 | 62 69 6c 69 74 79 20 72 |or porta|bility r|
|00005fc0| 61 74 68 65 72 20 74 68 | 61 6e 20 70 65 72 66 6f |ather th|an perfo|
|00005fd0| 72 6d 61 6e 63 65 2c 20 | 73 6f 20 74 68 61 74 20 |rmance, |so that |
|00005fe0| 61 6e 79 6f 6e 65 20 63 | 6f 75 6c 64 20 74 72 79 |anyone c|ould try|
|00005ff0| 20 6f 75 74 20 44 79 6c | 61 6e 20 6e 6f 20 6d 61 | out Dyl|an no ma|
|00006000| 74 74 65 72 20 77 68 61 | 74 20 62 72 61 6e 64 20 |tter wha|t brand |
|00006010| 6f 66 20 63 6f 6d 70 75 | 74 65 72 20 74 68 65 79 |of compu|ter they|
|00006020| 20 75 73 65 2e 20 20 42 | 65 63 61 75 73 65 20 44 | use. B|ecause D|
|00006030| 79 6c 61 6e 20 69 73 20 | 61 20 74 72 61 64 65 6d |ylan is |a tradem|
|00006040| 61 72 6b 20 6f 66 20 41 | 70 70 6c 65 20 43 6f 6d |ark of A|pple Com|
|00006050| 70 75 74 65 72 2c 20 61 | 6e 79 6f 6e 65 20 69 6d |puter, a|nyone im|
|00006060| 70 6c 65 6d 65 6e 74 69 | 6e 67 20 74 68 65 20 6c |plementi|ng the l|
|00006070| 61 6e 67 75 61 67 65 20 | 6d 75 73 74 20 6f 62 74 |anguage |must obt|
|00006080| 61 69 6e 20 70 65 72 6d | 69 73 73 69 6f 6e 20 74 |ain perm|ission t|
|00006090| 6f 20 75 73 65 20 74 68 | 65 20 6e 61 6d 65 2e 20 |o use th|e name. |
|000060a0| 20 48 6f 77 65 76 65 72 | 2c 20 69 74 20 69 73 20 | However|, it is |
|000060b0| 6f 75 72 20 69 6e 74 65 | 6e 74 69 6f 6e 20 74 68 |our inte|ntion th|
|000060c0| 61 74 20 70 65 72 6d 69 | 73 73 69 6f 6e 20 77 69 |at permi|ssion wi|
|000060d0| 6c 6c 20 62 65 20 67 72 | 61 6e 74 65 64 20 74 6f |ll be gr|anted to|
|000060e0| 20 61 6e 79 6f 6e 65 20 | 77 69 74 68 20 61 20 63 | anyone |with a c|
|000060f0| 6f 6e 66 6f 72 6d 69 6e | 67 20 69 6d 70 6c 65 6d |onformin|g implem|
|00006100| 65 6e 74 61 74 69 6f 6e | 2e 0d 41 70 70 6c 65 20 |entation|..Apple |
|00006110| 45 61 73 74 65 72 6e 20 | 52 65 73 65 61 72 63 68 |Eastern |Research|
|00006120| 20 61 6e 64 20 54 65 63 | 68 6e 6f 6c 6f 67 79 20 | and Tec|hnology |
|00006130| 77 69 6c 6c 20 62 65 20 | 74 68 65 20 66 6f 63 61 |will be |the foca|
|00006140| 6c 20 70 6f 69 6e 74 20 | 66 6f 72 20 64 69 73 63 |l point |for disc|
|00006150| 75 73 73 69 6f 6e 20 6f | 66 20 74 68 65 20 44 79 |ussion o|f the Dy|
|00006160| 6c 61 6e 20 6c 61 6e 67 | 75 61 67 65 2c 20 69 74 |lan lang|uage, it|
|00006170| 73 20 69 6d 70 6c 65 6d | 65 6e 74 61 74 69 6f 6e |s implem|entation|
|00006180| 73 2c 20 61 6e 64 20 69 | 74 73 20 66 75 74 75 72 |s, and i|ts futur|
|00006190| 65 20 65 76 6f 6c 75 74 | 69 6f 6e 2e 20 43 75 72 |e evolut|ion. Cur|
|000061a0| 72 65 6e 74 20 61 6e 64 | 20 70 72 6f 73 70 65 63 |rent and| prospec|
|000061b0| 74 69 76 65 20 75 73 65 | 72 73 20 6f 72 20 69 6d |tive use|rs or im|
|000061c0| 70 6c 65 6d 65 6e 74 6f | 72 73 20 6f 66 20 44 79 |plemento|rs of Dy|
|000061d0| 6c 61 6e 2c 20 61 73 20 | 77 65 6c 6c 20 61 73 20 |lan, as |well as |
|000061e0| 70 72 6f 67 72 61 6d 6d | 69 6e 67 20 6c 61 6e 67 |programm|ing lang|
|000061f0| 75 61 67 65 20 72 65 73 | 65 61 72 63 68 65 72 73 |uage res|earchers|
|00006200| 20 77 68 6f 20 61 72 65 | 20 69 6e 74 65 72 65 73 | who are| interes|
|00006210| 74 65 64 20 69 6e 20 6f | 62 6a 65 63 74 20 6f 72 |ted in o|bject or|
|00006220| 69 65 6e 74 65 64 20 64 | 79 6e 61 6d 69 63 20 6c |iented d|ynamic l|
|00006230| 61 6e 67 75 61 67 65 73 | 2c 20 61 72 65 20 69 6e |anguages|, are in|
|00006240| 76 69 74 65 64 20 74 6f | 20 63 6f 6d 6d 65 6e 74 |vited to| comment|
|00006250| 20 6f 6e 20 74 68 65 20 | 64 65 73 69 67 6e 20 6f | on the |design o|
|00006260| 66 20 74 68 65 20 6c 61 | 6e 67 75 61 67 65 20 61 |f the la|nguage a|
|00006270| 6e 64 20 73 75 67 67 65 | 73 74 20 69 6d 70 72 6f |nd sugge|st impro|
|00006280| 76 65 6d 65 6e 74 73 20 | 74 68 61 74 20 61 72 65 |vements |that are|
|00006290| 20 63 6f 6e 73 69 73 74 | 65 6e 74 20 77 69 74 68 | consist|ent with|
|000062a0| 20 74 68 65 20 67 6f 61 | 6c 73 20 6e 6f 74 65 64 | the goa|ls noted|
|000062b0| 20 61 62 6f 76 65 2e 20 | 57 65 20 77 69 6c 6c 20 | above. |We will |
|000062c0| 61 6c 73 6f 20 63 6f 6e | 74 69 6e 75 65 20 6f 75 |also con|tinue ou|
|000062d0| 72 20 70 61 73 74 20 70 | 6f 6c 69 63 79 20 6f 66 |r past p|olicy of|
|000062e0| 20 64 72 69 76 69 6e 67 | 20 74 68 65 20 65 76 6f | driving| the evo|
|000062f0| 6c 75 74 69 6f 6e 20 6f | 66 20 74 68 65 20 6c 61 |lution o|f the la|
|00006300| 6e 67 75 61 67 65 20 66 | 72 6f 6d 20 74 68 65 20 |nguage f|rom the |
|00006310| 6e 65 65 64 73 20 61 6e | 64 20 63 6f 6d 6d 65 6e |needs an|d commen|
|00006320| 74 73 20 6f 66 20 6f 75 | 72 20 75 73 65 72 73 2c |ts of ou|r users,|
|00006330| 20 77 68 6f 20 61 72 65 | 20 73 79 73 74 65 6d 20 | who are| system |
|00006340| 61 6e 64 20 61 70 70 6c | 69 63 61 74 69 6f 6e 20 |and appl|ication |
|00006350| 64 65 76 65 6c 6f 70 65 | 72 73 20 77 68 6f 73 65 |develope|rs whose|
|00006360| 20 70 72 65 76 69 6f 75 | 73 20 65 78 70 65 72 69 | previou|s experi|
|00006370| 65 6e 63 65 20 69 73 20 | 6c 61 72 67 65 6c 79 20 |ence is |largely |
|00006380| 77 69 74 68 20 63 6f 6e | 76 65 6e 74 69 6f 6e 61 |with con|ventiona|
|00006390| 6c 20 6c 61 6e 67 75 61 | 67 65 73 2e 20 57 65 20 |l langua|ges. We |
|000063a0| 68 6f 70 65 20 74 6f 20 | 69 6e 74 65 67 72 61 74 |hope to |integrat|
|000063b0| 65 20 61 6c 6c 20 69 6e | 70 75 74 73 20 74 6f 20 |e all in|puts to |
|000063c0| 6d 61 6b 65 20 44 79 6c | 61 6e 20 74 68 65 20 62 |make Dyl|an the b|
|000063d0| 65 73 74 20 6c 61 6e 67 | 75 61 67 65 20 77 65 20 |est lang|uage we |
|000063e0| 63 61 6e 20 61 6e 64 20 | 75 73 65 20 69 74 20 74 |can and |use it t|
|000063f0| 6f 20 62 72 69 6e 67 20 | 74 68 65 20 62 65 6e 65 |o bring |the bene|
+--------+-------------------------+-------------------------+--------+--------+
Only 25.0 KB of data is shown above.